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