Chinaunix
标题:
文本比对查错
[打印本页]
作者:
qlm027
时间:
2014-03-19 10:56
标题:
文本比对查错
本帖最后由 rdcwayx 于 2014-03-19 12:33 编辑
各位大虾,请假个问题:
有一批文件a.txt,b.txt……
文本字段样例:
cat a.txt
460030307190069|A000004572488A|[email]tet@myca.cn[/email]|223.102.20.216|80|SM9009; 4.3; JSS1J.N900|6
……
复制代码
字段说明:$1 15个数字 $2 14位字符 $3 任意位字符@任意位字符 $4 IP $5 数字 $6 String $7 固定数字 6或者7
各个字段都正确的输出到一个文本correcta.txt,错误的输出到errora.txt并且在每行后面备注错误的字段
例如
a.txt
460030307190069|A000004572488A|[email]tet@myca.cn[/email]|223.102.20.|80|SM9009; 4.3; JSS15J.N900|6
460030307190069|A000004572488A|[email]tet@myca.cn[/email]|223.102.20.216|80|SM9009; 4.3; JSS15J.N900|6
复制代码
输出
correcta.txt
460030307190069|A000004572488A|[email]tet@myca.cn[/email]|223.102.20.216|80|SM9009; 4.3; JSS15J.N900|6
复制代码
errora.txt
460030307190069|A000004572488A|[email]tet@myca.cn[/email]|223.102.20.|80|SM9009; 4.3; JSS15J.N900|8 $4$7
复制代码
作者:
rdcwayx
时间:
2014-03-19 12:35
这个不难啊,你自己有没有试着尝试一下呢?
作者:
qlm027
时间:
2014-03-19 13:04
回复
2#
rdcwayx
尝试过了,能不能给点思路。
作者:
rdcwayx
时间:
2014-03-19 13:13
本帖最后由 rdcwayx 于 2014-03-19 13:17 编辑
这几个条件里,要判断是否正确,哪个不会呢?
$1 15个数字
$2 14位字符
$3 任意位字符@任意位字符
$4 IP
$5 数字
$6 String
$7 固定数字 6或者7
复制代码
作者:
yestreenstars
时间:
2014-03-19 23:44
$1 15个数字 $2 14位字符 $3 任意位字符@任意位字符 $4 IP $5 数字 $6 String $7 固定数字 6或者7
$1 /^[0-9]{15}$/
$2 /^.{14}$/
$3 /.*@.*/
$4 //
$5 /^[0-9]+$/
$6 /.*/
$7 /^[67]$/
复制代码
LZ看看这正则是否符合你的要求?(IP的正则不好写,先看别的吧~)
作者:
rdcwayx
时间:
2014-03-20 07:20
本帖最后由 rdcwayx 于 2014-03-20 07:58 编辑
@yestreenstars
有人写的现成的,你看看是否可以用来判断IP合法性。
^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$
复制代码
demo
ip.JPG
(60.85 KB, 下载次数: 41)
下载附件
2014-03-20 07:21 上传
作者:
yestreenstars
时间:
2014-03-20 09:27
回复
6#
rdcwayx
貌似没什么漏洞,不错,收藏了,下次要用就可以直接Copy了~
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2