我需要正则表达式来跟随以下类型的字符串: F_E / S_(字符/数字或其组合)_(字符/数字或其组合)
这里/表示E或S. 它怎么写?我希望在这种形式中匹配一个字符串。如何在java中完成?我是Java的新手。
答案 0 :(得分:5)
括号是否属于表达式?你能举个例子吗。
也许以下正则表达式已经有效:
"F_[ES]_[A-Za-z0-9]+_[A-Za-z0-9]+"
以这种方式使用它:
Pattern pattern = Pattern.compile("F_[ES]_[A-Za-z0-9]+_[A-Za-z0-9]+");
Matcher matcher = pattern.matcher(myStringToMatch);
if (matcher.matches())
{
// Yeah, Baby!
}
如果没有小写字符的可能性,您可以跳过正则表达式中a-z
的出现次数。
答案 1 :(得分:1)
这是正则表达式
F\_[ES]{1}\_([\w\d]+)\_([\w\d]+)
答案 2 :(得分:1)
正则表达式将是F_ [ES] _ [A-Za-z0-9] + _ [A-Za-z0-9] +
看看Java包java.util.regex并尝试编写模式匹配方法 - 它非常简单。如果你遇到某个地方,请引用另一个引用你的java代码的问题..
答案 3 :(得分:1)
另一种写作方式:
F_[ES]_[^\W_]+_[^\W_]+