[英]Java Regex: how to use OR operation to extract substring
現在我有一組以下兩種格式的字符串(混合在一起):
1. /c/en/SUBSTRING
2. /c/en/SUBSTRING/some_other_string
我想使用單個Java Regex從字符串中提取SUBSTRING。 我知道如何為第二種情況做這件事: Pattern.compile("^/c/en/(\\\\w+)/")
。 顯然我可以使用兩個正則表達式,一個用於第一個用例,一個用於第二個用例,然后使用成功的一個。 但這是浪費計算。 如何考慮第一個案例並使用單個Regex完成任務?
我試過"^/c/en/(\\\\w+)[/|$]"
和"^/c/en/(\\\\w+)/|$"
但它們不起作用。 謝謝。
做就是了:
Pattern.compile("^/c/en/([^/]+)")
並使用Matcher
的.find()
對輸入。 子字符串將在此匹配器的.group(1)
可用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.