首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > perl python >

关于python中的正则表达式,该如何处理

2013-08-16 
关于python中的正则表达式想问下,在LINUX Shell中的正则表达式,在python中业同样适用,规则不会变吗,多谢!

关于python中的正则表达式
想问下,在LINUX Shell中的正则表达式,在python中业同样适用,规则不会变吗,多谢!

如果以上答案是YES,再引申一句:所有的脚本中的正则表达式规则都一致吗,多谢!
[解决办法]
不知你说的“规则”指什么?不同的正则表达式的实现中概念是一样的,但支持的功能会有变化,语法也会有细微的变化。这儿有几个常见版本的比较。http://www.greenend.org.uk/rjk/tech/regexp.html
[解决办法]
我用过Tcl和Python,正则的匹配规则基本是一样的,在Tcl里写好的正则匹配,Python也能用。
但在Tcl里类似group(),group(1)这种提取,是用&和\1, 在Python里我用的\g<0>, \g<1>,但看网上例子好像也能用&, \1
[解决办法]
差异不大,不过各个语言之间也有不同
这边有个比较可以参考一下 http://www.regular-expressions.info/refflavors.html

Python内置的re模块支持绝大部分的正则表达式规则,除了Atomic Grouping(固化分组), Possessive Quantifiers(占有量词) 和 Unicode properties(Unicode字符属性).
[解决办法]
"想问下,在LINUX Shell中的正则表达式,在python中业同样适用,规则不会变吗,多谢!
如果以上答案是YES,再引申一句:所有的脚本中的正则表达式规则都一致吗,多谢! "
根据我折腾过:
python,C#,javascript,java,perl,php,Notepad++,UltrEdit,EditPlus等中正则的经验:
以上问题的答案是一样的:
关于正则表达式:
1.核心的,基本的正则的语法,不同的环境或语音下,都是一样的,比如:
. 任意单个字符
\d 数字0-9
\w (大小写)字母,数字,下划线
等等。
(java中反斜杠需要写成\\,这个不算变化,只算java中的字符串的写法稍微特殊而已)

2.其他,个别的语法,和很多高级的语法,很多不同的语言(和环境)中的写法,都不太一样的。
比如:
命名的组 named group
Python中是:(?P<name>xxx)
C#中是:(?<name>xxx)

更详细的解释,去看:
(用google搜)
正则表达式学习心得

热点排行