[英]Regular expressions and matching URLs with metacharacters
我在查找与以下字符串匹配的正则表达式时遇到麻烦。
Korben;http://feeds.feedburner.com/KorbensBlog-UpgradeYourMind?format=xml;1
一个问题是转义问号。 Java的模式匹配器似乎不接受\\?
作为有效的转义序列,但也无法与myregexp.com上的测试器一起使用。
这是我到目前为止的内容:
([a-zA-Z0-9])+;http://([a-zA-Z0-9./-]+);[0-9]+
有什么建议么?
编辑:最初的意图是匹配第一个分号后可以找到的所有URL。
如果将表达式放在字符串中,则还需要转义“ \\”。 那是:
String expr = "([a-zA-Z0-9])+;http://([a-zA-Z0-9./\\-\\?]+);[0-9]+";
如果它不是字符类([...])构造中的最后一个字符,则还需要转义“-”。
[?]
匹配“?”
如果您的表达式位于字符串中,则可能需要转义反斜杠。 像"\\\\?"
类的东西
([a-zA-Z0-9]+);http://([a-zA-Z0-9./-]+)(\?[^;]+);([0-9]+)
在那个RexExp编辑器网站上为我工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.