[英]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.