如何写这个正则表达式?

我试图寻找这个字符串“拼写[wurd]显示IPA名词1.A”如何写这个正则表达式

,并删除一切是[]使用外:

String pron = noHTML.replaceAll("\\[.*?]",""); //(there is a double \\ \\ here...) 

这里面代替一切..如何扭转它? :S

我试过组合!和^但它似乎并没有工作。

回答:

试试这个 -

String pron = noHTML.replaceAll("(^.*\\[)|(\\].*$)",""); 

要包括括号使用先行回顾后 -

String pron = noHTML.replaceAll("(^.*(?=\\[))|((?<=\\]).*$)",""); 

欲了解更多信息有关先行回顾后,请参阅http://www.regular-expressions.info/lookaround.html

回答:

你需要这样的:

String pron = noHTML.replaceAll("\[([^\[\]].*)\]",""); 

这里:

http://rubular.com/r/95ETge7Pyv

回答:

我会简单地用部分替换整个字符串中的括号:

String pron = noHTML.replaceAll(".*?\\[(.*?)\\].*", "$1"); 

本(1)匹配整个字符串,(2)捕获括号中的部分并将其存储在第一个捕获组中,(3)使用该组作为替换en轮胎匹配字符串。

包括在结果中的括号是一个简单的事情或移动()向外位:

String pron = noHTML.replaceAll(".*?(\\[.*?\\]).*", "$1"); 

以上是 如何写这个正则表达式? 的全部内容, 来源链接: utcz.com/qa/261125.html

回到顶部