Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 正则表达式,省略括号_Java_Regex - Fatal编程技术网

Java 正则表达式,省略括号

Java 正则表达式,省略括号,java,regex,Java,Regex,需要帮助找出正则表达式,在这里我需要删除{{和}之间的所有数据吗 以下是coupus: {{for|the American actor|Russ Conway (actor)}} {{Use dmy dates|date=November 2012}} {{Infobox musical artist <!-- See Wikipedia:WikiProject_Musicians --> | birth_name = Trevor Herbert

需要帮助找出正则表达式,在这里我需要删除{{和}之间的所有数据吗

以下是coupus:

{{for|the American actor|Russ Conway (actor)}}
{{Use dmy dates|date=November 2012}}
{{Infobox musical artist <!-- See Wikipedia:WikiProject_Musicians -->
| birth_name          = Trevor Herbert Stanford
| birth_date          = {{birth date|1925|09|2|df=y}}
| birth_place         = [[Bristol]], [[England]], UK
| death_date          = {{death date and age|2000|11|16|1925|09|02|df=y}}
| death_place         = [[Eastbourne]], [[Sussex]], England, UK
| origin              = 
}}

record|hits]].<ref name="British Hit Singles & Albums"/>

{{reflist}}

==External links==
*[http://www.russconway.co.uk/ Russ Conway]
*{{YouTube|TnIpQhDn4Zg|Russ Conway playing Side Saddle}}

{{Authority control|VIAF=41343596}}

<!-- Metadata: see [[Wikipedia:Persondata]] -->
{{Persondata
| NAME              =Conway, Russ
}}
{{DEFAULTSORT:Conway, Russ}}
[[Category:1925 births]]
以下是所有大括号连同其中的文本一起删除的输出:

record|hits]].<ref name="British Hit Singles & Albums"/>
==External links==
*[http://www.russconway.co.uk/ Russ Conway]
*
<!-- Metadata: see [[Wikipedia:Persondata]] -->
[[Category:1925 births]]
我省略了输出中的空格,我会处理的

string.replaceAll("\\{\\{[\\s\\S]*?\\}\\}","");
将产生:

record|hits]].<ref name="British Hit Singles & Albums"/> ==External links== *[http://www.russconway.co.uk/ Russ Conway] * <!-- Metadata: see [[Wikipedia:Persondata]] --> [[Category:1925 births]] 记录|点击次数]]。 ==外部链接== *[http://www.russconway.co.uk/ 罗斯康威] * [[类别:1925出生]]
这将处理嵌套的
{{}

Matcher m=Pattern.compile("\\{[^{}]*\\}").matcher(input);
while(m.find())
{
    input=m.replaceAll("");
    m.reset(input);
}

让我们看看你尝试过的东西,上面的表达式不会考虑嵌套的括号…例如在这一块:{{Infobox music artist!--参见维基百科:Wikipedia:WikiProject_music--| birth_name=Trevor Herbert Stanford | birth|date={{birth date 1925 | 09 | 2 | df y}}}birth| place=[[Bristol],[[England,UK | death|u date={{death date and age | 2000 | 11 | 16 | 1925 | 09 | 02 | df=y}}death|place=[[Eastbourne]],[[Sussex]],England,UK | origin=}它将在|出生|后丢失数据…您无法使用正则表达式解析嵌套表达式,因为它不是正则表达式。这类似于使用正则表达式解析HTML,本文对此进行了讨论:虽然它起作用,但我无法理解您是如何比较索引的?
[^{}]*
将0与许多不是
{
}
的字符相匹配。因此,如果您有嵌套的
{}
,则只会删除非嵌套的
{}}
…所以我们需要继续替换,直到我们没有
{
,因为像这样的文本{{引用新闻}title=Уаааааааааааааааааааааааааааurl=km.ru/magazin/view.asp| work=|publisher=KMnews.RU | date=2008年8月13日| language=俄语| accessdate=2008年12月4日}将进入无限循环。它假设模式{{{}}与此不匹配@Anirudh@Kailashur输入没有},因此它将进入循环..如果}}不存在,您希望如何处理inputI?需要删除嵌套的{{}或者{}如果有..否则我需要继续前进@阿尼鲁德