java正则替换标点

感谢【火龙果】,钦佩他的研究精神。
http://topic.csdn.net/u/20080925/15/41b814bf-fcaf-4b37-be91-10561a102768.html

测试代码如下:
  1. classT{
  2. publicstaticvoidmain(String...args){
  3. Stringstr="!!!!去符号标号!!当然。!!..**半角";
  4. System.out.println(str);
  5. System.out.println(str.replaceAll("\\p{Punct}",""));
  6. System.out.println(str.replaceAll("\\pP",""));
  7. }
  8. }

运行结果
!!!!去符号标号!!当然。!!..**半角
!!去符号标号!!当然。半角
去符号标号当然半角


果子的解释
采用 Unicode 标点属性方式的正则表达式,可以去掉所有的标点符号,
包括全角、半角、横排、竖排等的标点符号。

注意一下,如果在 JDK 5 或以下的环境中,全角单引号对、双引号对
无法替换掉,这是 JDK 5 及以下版本缺失的,在 JDK 6 中由于加入了
Pi 和 Pf 两个 Unicode 子属性,因此就能替换掉。

在 JDK 6 以下的版本中可以这样:
  1. str=str.replaceAll("[\\pP‘’“”]","");
我查到的 \pP的说明


来自于 http://www.unicode.org/reports/tr18/
分享到:
评论
2 楼 RonQi2011-08-19
我试了一下,根据API,\p{Punct}匹配的标点是这些,
Java代码 收藏代码
  1. \p{Punct}标点符号:!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~

其中
Java代码 收藏代码
  1. $+<=>^`|~

这几个标点是\pP匹配不到的,是不是这俩一块儿用是匹配最全的?
Java代码 收藏代码
  1. [\\pP\\p{Punct}]
1 楼 RonQi2011-08-19
学习了,还带了原文链接,顺便过去学习了火龙果的高见,很好
计算机保研/考研面试题——计算机组成原理篇 本文总结了985和华五学校习计算机保研/考研常问面试时的计算机组成原理题,欢迎点赞、收藏、评论、关注 阅读详情

相关推荐

超详细 Git创建仓库及上传项目至Github操作(Windows系统)

文章目录前言一、Git下载及安装二、创建代码仓库1.配置身份2.创建本地仓库3.提交本地代码三、使用Git上传代码至Github1.创建ssh keys2.在Github中新建仓库3.关联本地仓库与Github仓库4.推送代码至Github仓库总结 前言 本文对于Windows系统上git的安装及基本使用方法进行简单介绍,并介绍如何使用git将仓库中的项目上传至个人的Github中去。内容参考《第一行代码》以及一些博客。 本文适合新手阅读哦~ 一、Git下载及安装 打开网站 git下载 下载安装包(直接

lijianyi0219的博客 2万+

Java正则表达式替换,告别繁琐的字符串操作

正则表达式,又称规则表达式,是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。它被用来描述、匹配一系列匹配某个句法规则的字符串,通常被用来检索、替换那些符合某个模式(规则)的文本。有时候,简单的字符串替换无法满足我们的需求,这时就需要借助正则表达式来完成更复杂的字符串替换任务。类的一个实例方法,使用正则表达式来替换字符串中的字符。(替换后的字符串)。的工作,站在更高的角度深入思考问题,从。

CalEx_Tech的博客 5051

使用verilog实现基于FPGA的TDC设计

verilog实现TDC 高精度时间数字转换器概述(TDC) 简介: TDC被用于测量时间间隔,应用在物理研究、飞行时间测量领域等。 本设计使用verilog实现并在xilinx和altera的FPGA上均可实现! 设计中使用到下述几个模块,包括FIFO,COUNT等,在xilinx下也使用到了一些原语等。下面有实现的代码和仿真截图等。 顶层模块设计如下: module top( input wire start, input wire stop, input wire clk, output wire T

QQ_778132974的博客 6215

java正则匹配及替换常用

匹配 1、字符串.matches(String REGEX); 2、Pattern.matches(String REGEX , String str); 3、发现 Pattern pattern = Pattern.compile(REGEX); Matcher matcher = pattern.matcher(content); matcher.find(); matcher.lookingAt(); ... 替换 Patt...

Blue_Zwj的博客 7010

Java】String.replaceAll(String, String) 用法 正则替换

replaceAll 是正则替换,它的第二个参数可以使用 $ 代表正则匹配组

懒怠的小猫 7188

正则表达式替换操作详解与实例

无论是简单的替换还是复杂的替换需求,正则表达式都提供了强大的工具来满足我们的需求。今天我们来详细讲解一下正则表达式中的替换操作,并通过实例展示如何在Java中使用正则表达式进行替换。在某些情况下,我们可能需要使用复杂的逻辑进行替换,这时可以使用替换函数。方法进行多次替换,例如,将字符串中的所有空格替换为下划线,将所有逗号替换为分号。正则表达式可以用来替换字符串中的敏感信息,例如隐藏电子邮件地址中的用户名部分。正则表达式的捕获组允许我们在替换字符串中引用匹配的部分。方法,可以实现更加灵活的替换

技术研究中心 4994

java 正则表达式精确查找和替换指定字符

如果要精确替换指定字符,可以考虑正则,\\s*可以匹配0到多个空格 适用性会replace更好。先从单个开始入手,再逐个增加,验证,这样更能发现问题和调试

一路向前 2204

字符串去标点Java正则替换标点

编一个程序,从 从一个输入的字符串中去掉标点符号。要求输入到程序的字符串必须含有标点符号,输出结果则是去掉标点符号后的 string 对象。 示例: 输入:ab,acd-+,sss1.!+ 输出:abacdsss 文末附网上找到的一些关于正则表达式匹配字符的一些资源,并附资源链接 import java.io.*; import java.util.*; import java.text.*; i...

huanglu12138的博客 1987

java正则表达式替换所有标点符号

对字符串中的各种标点符号进行过滤: public class Test { public static void main(String[] args) { String s = ":\\\\/.&amp;*(()/*`~?&lt;|{:。}&gt;-,';][=-!#$%^&amp;*+@\\"; s = s.replaceAll("[\\pP\\p{...

Hello World 1万+

java正则替换数字_java正则表达替换中文标点和空格及数字

package com.test;import java.util.regex.Pattern;public class StringUtils {/**匹配&或全角状态字符或标点*/public static final String PATTERN="&|[\uFE30-\uFFA0]|‘’|“”";public static String replaceSpecialtySt...

weixin_32569511的博客 1332

java正则表达替换中文标点和空格及数字

[code="java"] package com.test; import java.util.regex.Pattern; public class StringUtils { /**匹配&或全角状态字符或标点*/ public static final String PATTERN="&|[\uFE30-\uFFA0]|‘’|“”"; publi...

喧嚣求静 1437

JAVA正则替换字符串的全角、半角标点符号

测试代码如下: class T { public static void main(String... args) { String str = "!!!!去符号标号!!当然。!!..**半角"; System.out.println(str); System.out.println(str.replaceAll("\\p{Punct}", "")); Sys

大睡侠_BedPotato的技术笔记 4071

java字符串替换标点符号_关于Java:如何使用正则表达式从字符串中删除外部标点符号...

给定如下所示的字符串,请通过正则表达式删除所有前导和尾随的标点符号:String a ="!?Don't.;, .:delete !the@ $actual string%";String b ="Hyphenated-words, too!";我知道正则表达式[ P {Alnum}]会以所有非字母数字字符为目标,但是我怎么只以前导和尾随标点为目标,所以我得到了...a ="Don't delet...

weixin_35486456的博客 771

Java利用正则表达式去除字符串中的空格、回车、制表符、换行符或标点符号

1、去除空格、回车、制表符、换行符 String str = "!!!? ?1234!!!!??"+"\t"+"abcd! !!"+"\r"+"!%*)%¥!去除标点符号!"+"\n"+"!,,。 !!..**半角"; System.out.println(str); String str1 = ""; Pattern p = Pattern.compile("\\s*|\t|\r|\n"); Matcher m = p.matcher(str); str1 = m.replaceAll("")

qq_39918677的博客 6867

正则替换字符串的全角、半角标点符号

引用自:http://blog.csdn.net/java2000_net/article/details/2980725   测试代码如下: class T {   public static void main(String... args) {     String str = "!!!!去符号标号!!当然。!!..**半角";     System.out....

小彬~ 1582

Java 一行代码替换清除文本标点符号

一行代码,替换去除你文本中所有标点符号

dying 搁浅 1192

Java-同类型字符替换replaceall(正则表达发)

关于replaceall方法 关于 replaceAll方法 它有两个参数 第一个参数是要替换的字符串类型 第二个参数是将所有字符串替换成这个参数 比如replaceAll("\s",“1”);这里就是把所有空内容(空格,换行等等)换成了 “1” 。 代码 public class Demo01 { public static void main(String[] args) { //trim属性只能去掉字符串头和尾的空格 String string1=new String(" abc

weixin_45843676的博客 1104

利用正则表达式匹配标点问题

做了一个任务,将每个描述中除了中文,拼音和数字中的其他符号找出来。查找资料后发现利用正则表达式做这个问题 我写了一个方法和测试的例子如下: package com.temaiba; import java.util.regex.Matcher; import java.util.regex.Pattern; public class Sign { public static String

haha_321的专栏 2309

java 去除空格、标点符号

public class TempTest { public static void main(String[] args) { //string去除空格 String str=" hello world "; System.out.println(str); String str1=str.trim();//去除首...

线上幽灵 1773

易控应用与混凝土搅拌系统.pdf

易控应用与混凝土搅拌系统pdf,易控应用与混凝土搅拌系统

Windows To Go辅助工具一键把Win10系统安装到U盘

Win10企业版内置的Windows To Go功能能够实现把Windows10系统安装到U盘中(Windows To Go安装Win10系统到U盘教程),从而打造一个移动的Win10操作系统,方便随身携带使用。但遗憾的是只有Win10企业版才带有Windows To Go功能,不过好在MS酋长已经分享了为Win10专业版和家庭版添加Windows To Go功能的方法。但其实这也不需要了,不管你的Win10系统有无Windows To Go功能,只需借助一款名为Windows To Go辅助工具(WTG辅助工具)的小软件,即可把Win10系统安装到U盘中。

上一篇: python debug【】
下一篇: java正则替换标点
wangran51
博客等级 码龄17年 453粉丝 41原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值