每张笑脸都必须有一个笑脸,嘴上应标有)
或D
。
我尝试使用以下代码执行此操作:
import java.util.*;
import java.util.regex.Pattern;
public class SmileFaces {
public static int countSmileys(List<String> arr) {
String regx = "/^((:|;)(-|~)?|D|//))$/";
int count=0;
ListIterator<String> itr=arr.listIterator();
while(itr.hasNext()){
if(Pattern.matches(regx,itr.next())){
count++;
}
}
return count;
}
}
我已经尝试过此正则表达式用于微笑检查: /^((:|;)(-|~)?|D|//))$/
您可以通过正确转义\\)
两个反斜杠来修补当前的正则表达式,但我认为字符类在此处更易于阅读:
String regx = "^[;:][~-]?[D)]$";
请注意,Java正则表达式模式不像在其他语言(如PHP或Python)中那样使用定界符,因此我将其从模式中删除了。另外,如果您想将上述模式用于某些方法(例如)String#matches
,则可以删除^
和$
锚点。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句