IS:
String: "DARTH WEDR DR MRS"
Regex: "(.*?DR)\\s(-|MRS?|MI?SS?)?$"
这个正则表达式操作不能删除MRS,只能保留DR。
String: "DARTH WEDR DR MRS".replaceAll("(.*?DR)\\s(-|MRS?|MI?SS?)?$", "");
Output: "DARTH WEDR DR"
缩写通常出现在结尾,但有些名字中可能会有缩写,因此应该在结尾处添加<空格>DR<空格>
以避免名字中的缩写造成问题。
例如:
BRUCE WAYNE MR
GAL GADOT DR MS
GOD ZILADR DR MRS
我没有想法了,有什么好的建议吗?
$1
替换。可能你还想用(?:\\s+(?:-|MRS?|MI?SS?))?$
替换\\s(-|MRS?|MI?SS?)?$
并在DR
前添加\\s
。请参考这个正则表达式演示。 - Wiktor Stribiżew