求教【正则表达式】:去掉电话号码间的连字符“-”
- jjxxin使用正则表达式,如何去掉电话号码间的连字符?比如“1-333-333-3333”替换为1333333333
因为数字前的连字符不止出现在电话号码中,不能简单直接地把“-”替换了事。
看了几天的学习资料了,查找会写了:1-\d{3}-\d{3}-\d{4}
就是不会写替换后的语句
求教! - aghu内容随便贴到记事本查找替换即可
- xy455380512安卓有软件可以,叫 联系人号码修复工具生死有命,富贵在天~
- jjxxin
- LyriczEditplus下的话可以这样:
查找:([0-9])-([0-9][0-9][0-9])-([0-9][0-9][0-9])-([0-9][0-9][0-9][0-9])
替换:\1\2\3\4 - 双倍余额递减法同求怎么删去指定行(比如第192行)之前的所有数据?
- iszeds这个替换得支持变量才行吧,-需要依赖前后的数字才能查询出来,而前后的数字不固定,替换只能替换成固定内容
- iszeds楼主可以这样替换,如果样本如你4楼发的
1、先把 - 直接替换掉
2、把UTF8替换成UTF-8
3、把QUOTEDPRINTABLE替换成QUOTED-PRINTABLE - Cappuccin0(?![0-9])-(?=[0-9])
把上面匹配到的替换为空即可。匹配的是两个数字之间的减号 - spellcrit很多引擎不支持这些复杂的语法的。
简单点的就是([0-9]+)-[0-9] 替换成 \1 (有的是$1) - Cappuccin0这个用批处理或者shell脚本之类的比较容易处理吧 正则反而可能麻烦得多
- iszeds高手,用断言 也可以
- Cappuccin0前后向匹配确实可能有些编辑器不支持 不过应该没有那么多吧。。。
- spellcriteditplus UE之类的都不支持吧。。
- azb1262006先用你的正则表达式把所有电话数字加符号提取出来 iOS fly ~
- 双倍余额递减法对我也想到批处理比较简单因为正好也有几十个txt,但是不会写代码。。
- Cappuccin0不好意思 没怎么用过这俩我也不确定……
以前常用的notepad++、notepad2和emeditor应该都是支持的,印象里emeditor应该是各种功能最好的(毕竟是收费的= =)
确实如果考虑到引擎支持的问题,换个简洁点的方案可能更实际一点 - jjxxin感谢!达到目的了
- jjxxin这个把“UTF-8”里的“-”也算为要替换的内容了
- jjxxin感谢各位!达到目的,收工
- Cappuccin0假设文件叫a.txt, 跳过前面三十行(从第三十一行)开始的话,下面的命令就行了。输出重定向到文件就能写入新的文件,如果要把命令写到批处理(而非直接终端下面运行)的话%i要改成%%i。复制代码
- for /f "skip=30 delims=" %i in (a.txt) do @echo %i
试了下应该是没错,太久没用了。。。 - D^Dnotepad++的确是支持的
- 双倍余额递减法大神受我一拜
- Cappuccin0艾玛果然是写错了。。。应该是这个。。。。复制代码
- (?<=[0-9])-(?=[0-9])
- jjxxin简洁高效,佩服!!!
- 五月天原来EditPlus还在啊,15年前我超爱用的工具
- Lyricz我已经用了十七八年了 iOS fly ~
- 时间潜艇都不会可以用行编辑,直接删除-