java字符串拆分所有非字母数字除撇号
所以我想在任何非字母数字字符上拆分java中的字符串。
目前我一直这样做
words= Str.split("\\W+");
但是我想在那里保留撇号(“’”)。 是否有任何正则表达式来保留撇号但踢掉其余的垃圾? 谢谢。
words = Str.split("[^\\w']+");
只需将其添加到角色类。 \W
相当于[^\w]
,然后你可以添加'
。
但请注意, \w
实际上还包括下划线。 如果你想分割下划线,你应该使用[^a-zA-Z0-9']
。
对于基本英文字符,请使用
words = Str.split("[^a-zA-Z0-9']+");
如果您想要包含带有特殊字符的英语单词(例如未婚夫 )或使用非英语字符的语言,请使用
words = Str.split("[^\\p{L}0-9']+");
- 使用EAGER @ElementCollection对find()进行Hibernate LazyInitializationException
- java.lang.ClassCastException:[Ljava.lang.Object; 无法施展
- Spring框架:使用util:map填充Map
- JavaFX全屏独占模式
- 使用Java JSch进行SFTP文件传输
- 在JBoss中部署的java servlet中加载属性文件作为战争
- 为什么shortValue()方法是具体的,但intValue()是抽象到java.lang.Number?
- JavaConverters asScala方法的时间复杂度
- 如何从Eclipse中的另一个项目调用类?