正则表达式里括号的转义好乱# Programming - 葵花宝典b*i2015-03-24 07:031 楼老婆北京签证,H4过来就可以团圆了但是已经被check了37天了,打电话发邮件给使馆都没用,机票也cancel了。请问这种情况该怎么办呢?急问,谢谢!
d*i2015-03-24 07:034 楼比如下面这个匹配电话号码 (123) 456-7890 的写法(lc接受的正确版):grep '([0-9]\{3\}) [0-9]\{3\}-[0-9]\{4\}' file.txt显然()和{}是本身默认为token,需要转义才做语义符的。而[]是本身默认为语义符,需要转义才做token的。为啥不能把语法统一了呢?请过来人指教。谢谢!
w*z2015-03-24 07:0311 楼我每次都要看manual 才能写。【在 d******i 的大作中提到】: 比如下面这个匹配电话号码 (123) 456-7890 的写法(lc接受的正确版):: grep '([0-9]\{3\}) [0-9]\{3\}-[0-9]\{4\}' file.txt: 显然()和{}是本身默认为token,需要转义才做语义符的。: 而[]是本身默认为语义符,需要转义才做token的。: 为啥不能把语法统一了呢?: 请过来人指教。: 谢谢!
l*d2015-03-24 07:0312 楼我老公H1反签,也被check,时间和你的差不多。给北京大使馆发email或传真吧。虽说可能没什么用,但至少吸引一下他们的眼球吧。【在 b******i 的大作中提到】: 老婆北京签证,: H4过来就可以团圆了: 但是已经被check了37天了,打电话发邮件给使馆都没用,机票也cancel了。: 请问这种情况该怎么办呢?急问,谢谢!
d*i2015-03-24 07:0314 楼最标准的正则表达式应该是Perl了吧,最原生的应该是Bourne shell的。【在 n******7 的大作中提到】: grep/vim/perl等的正则语法都有些不同: 所以没必要不要折腾这个,用一种就好: 比如grep 可以用-P: 不然会精分
b*i2015-03-24 07:0315 楼请问你现在还在等么?我发了email,也打了电话,没有用。告诉我只有等【在 l*****d 的大作中提到】: 我老公H1反签,也被check,时间和你的差不多。: 给北京大使馆发email或传真吧。虽说可能没什么用,但至少吸引一下他们的眼球吧。
d*i2015-03-24 07:0317 楼大哥,正是不想折腾才有OP的问题。加P试了,没有啥区别啊。还是一样的问题:转义的默认项不一致。【在 n******7 的大作中提到】: grep/vim/perl等的正则语法都有些不同: 所以没必要不要折腾这个,用一种就好: 比如grep 可以用-P: 不然会精分
n*72015-03-24 07:0319 楼你到底试了没?-> grep '([0-9]\{3\}) [0-9]\{3\}-[0-9]\{4\}' test(123) 456-7890-> grep -P '([0-9]\{3\}) [0-9]\{3\}-[0-9]\{4\}' test-> grep -P '\([0-9]{3}\) [0-9]{3}-[0-9]{4}' test(123) 456-7890-> grep -P '\(\d{3}\) \d{3}-\d{4}' test(123) 456-7890不知道为啥,贴出来的backslash都没了,要修改才好【在 d******i 的大作中提到】: 大哥,正是不想折腾才有OP的问题。: 加P试了,没有啥区别啊。: 还是一样的问题:转义的默认项不一致。
n*72015-03-24 07:0321 楼不好说那个标准,不过我只用perl的,减少记忆负担和错误python的regexp跟perl的也一样我记得哪里看到过一个不同版本的regexp语法对照表,vim用的是basic regularexpressiongrep自己有一套,但是可以兼容其他几类,编程语言perl风格是主流还好我不用很多regexp的东西,不然这种回字几种写法的事情要搞死人【在 d****i 的大作中提到】: 最标准的正则表达式应该是Perl了吧,最原生的应该是Bourne shell的。
b*c2015-03-24 07:0322 楼同意。我们一同事跳到隔几条马路以外的公司,有没搬家费不知道,但人家除加工资以外,还给6W sign on bonus。现在本公司给match everything,人家还没想好,两边还在出价争夺中...【在 r****9 的大作中提到】: 主要是看公司多想要你。
d*i2015-03-24 07:0323 楼多谢,之前没写对。perl style的还是要清新些。【在 n******7 的大作中提到】: 你到底试了没?: -> grep '([0-9]\{3\}) [0-9]\{3\}-[0-9]\{4\}' test: (123) 456-7890: -> grep -P '([0-9]\{3\}) [0-9]\{3\}-[0-9]\{4\}' test: -> grep -P '\([0-9]{3}\) [0-9]{3}-[0-9]{4}' test: (123) 456-7890: -> grep -P '\(\d{3}\) \d{3}-\d{4}' test: (123) 456-7890: 不知道为啥,贴出来的backslash都没了,要修改才好
m*12015-03-24 07:0324 楼这人真牛啊。【在 b*******c 的大作中提到】: 同意。我们一同事跳到隔几条马路以外的公司,有没搬家费不知道,但人家除加工资以: 外,还给6W sign on bonus。现在本公司给match everything,人家还没想好,两边还: 在出价争夺中...