我想删除所有名称前缀. (例如教授,博士,先生等),任何序列都可以不止一个.所以我想写一个正则表达式,它将切片所有这些前缀.我想在ruby中这样做. 以下是我想要实现的输入/输出设置.
以下是我想要实现的输入/输出设置.
"Prof. Dr. John Doe" => "John Doe" "Dr. Prin. Gloria Smith" => "Gloria Smith" "Dr. William" => "William" "Sean Paul" => "Sean Paul"
我还想将删除的前缀存储在另一个字符串中.
"Prof. Dr. John Doe" => "Prof. Dr." "Dr. Prin. Gloria Smith" => "Dr. Prin." "Dr. William" => "Dr." "Sean Paul" => ""假设前缀只有Prof.,Dr.,Mr.,Mrs.,Prin.,女士,您可以尝试:
s = "Prof. Dr. John Doe" s.gsub(/Prof.|Dr.|Mr.|Mrs.|Prin.|Ms./, "").strip
第二个问题(想要将删除的前缀存储在另一个字符串中)
s = "Prof. Dr. John Doe" s.scan(/Prof.|Dr.|Mr.|Mrs.|Prin.|Ms./).join("") => "Prof.Dr."