gpt4 book ai didi

java - 你会如何将这个 JavaScript 正则表达式翻译成 Java?

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:39:34 25 4
gpt4 key购买 nike

你会如何将这个 JavaScript 正则表达式翻译成 Java?

它从字符串中删除标点符号:

strippedStr = str.replace(/[\.,-\/#!$%\^&\*;:{}=\-_`~()]/g,"");

最佳答案

不需要s///里面的东西,你只需要传递正则表达式,这里是一个字符类。

public static void main(String [] args)
{
String s = ".,/#!$%^&*;:{}=-_`~()./#hello#&%---#(($";
String n = s.replaceAll("[-.,/#!$%^&*;:{}=_`~()]", "");
System.out.println(n); // should print "hello"

// using POSIX character class which matches any of:
// !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
String p = s.replaceAll("\\p{Punct}", "");
System.out.println(p);
}

这里是 Java 正则表达式的语法:http://download.oracle.com/javase/6/docs/api/java/util/regex/Pattern.html#sum

上面使用的 POSIX 字符类涵盖的内容比您多一些,所以我不确定它是否符合您的需求。

  • 已编辑,因为您不需要在字符类中转义 .
  • 编辑以将 - 移动到字符类的开头,因此它没有特殊含义

关于java - 你会如何将这个 JavaScript 正则表达式翻译成 Java?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4329536/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com