我的正则表达式一直没有匹配,不知道出了什么问题。
String myString = 'test @abcd efg done'
Pattern p = Pattern.compile('@(\\w+)\\s(\\w+)');
Matcher pm = p.matcher(myString);
pm.group(); //getting no match error
预计第一组为 abcd,第二组为 efg。 知道我的正则表达式有什么问题吗?
任何帮助都会很好。
谢谢!
最佳答案
你的正则表达式没问题。这里的陷阱是你需要在调用 matcher.group() 之前使用 matcher.find() 方法。所以这工作正常
String myString = 'test @abcd efg done';
Pattern p = Pattern.compile('@(\\w+)\\s(\\w+)');
Matcher pm = p.matcher(myString);
if(pm.find()) {
System.debug(pm.group(1));
}
关于regex - Salesforce Apex 正则表达式 - @metion,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30134501/