简体   繁体   English

Java中的正则表达式转义序列错误

[英]Regex escape sequence error in Java

p = "<a href=\".*?\"\\stitle=\"(.*?\")>.*?<\/a><span class=\"event-nodetype\">\((.*?\)</span><span class=\"event-timeleft\">\()(.*?\)<\/span><li>)";

This is regex i created for 这是我为之创建的正则表达式

<a href="/bu/?q=node/775" title="YOK ED?LEN MEDEN?YET: GEÇ OSMANLI VE ERKEN CUMHUR?YET DÖNEMLER?NDE GAYR?MÜSL?M VARLI?I">YOK ED?LEN MEDEN?YET: GEÇ OSMANLI VE ERKEN CUMHUR?YET DÖNEMLER?NDE GAYR?MÜSL?M VARLI?I</a><span class="event-nodetype">(Konferans / Kongre / Sempozyum)</span><span class="event-timeleft">(Devam etmekte)</span><li> 

But eclipse gives error of 但是蚀给的错误

Invalid escape sequence (valid ones are \b \t \n \f \r \" \' \\ )

I put \\ to " and other things but still i cant fix it. 我将\\放在"和其他东西上,但仍然无法解决。

What is the problem? 问题是什么?

When i split the line into 4 lines 当我将线分为4行时

 p = "<a href=\".*?\"\\stitle=\"(.*?\")>"
        + ".*?<\/a><span class=\"event-nodetype\">\(("
        + ".*?\)</span><span class=\"event-timeleft\">\()("
        + ".*?\)<\/span><li>)";

the error seems on line 2. 该错误似乎在第2行上。

\\"是正确的, \\\\s也是如此(但是我会使用\\\\s+ 。)您的正则表达式中的所有其他反斜杠都必须转义: \\\\/\\\\(\\\\)/不需要这是针对字符串文字的,而不是针对正则表达式的;反斜杠是两者的转义字符。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM