我正在尝试解析某些地址,我想删除除/ s / o之外的特殊字符。 S / O | d / o | D / O |没有O等。
所以,让我说我有一个字符串。像。的东西。
@Jane Doe.
W/O John Doe.
House #250,
Campbell & Jack ^Street,
\Random * State, Nowhere.
我将在
中使用什么样的正则表达式String parsedString = addressString.replaceAll(regex,"");
以便parsedString具有输出。
Jane Doe
W/O John Doe
House 250
Campbell Jack Street
Random State, Nowhere
(我正在替换@,。#^& /(W / O除外))
答案 0 :(得分:3)
您可以将此模式与不区分大小写的选项一起使用:
String pat = "[@#&^*/.,](?i)(?<![wds]/(?=o))";
细节:
[@#&^*/.,] # characters you want to remove
(?i) # switch the case insensitive flag
(?<! # negative lookbehind: not preceded by
[wds]/ # w or d or s and a slash
(?=o) # lookahead: followed by a o
)