请大家分享下学正则表达式和一种脚本语言的经验

202 views
Skip to first unread message

Luo Luo

unread,
Jun 11, 2012, 9:59:44 PM6/11/12
to pon...@googlegroups.com
 Hi, 我在打算开始学正则表达式和一种脚本语言,但是不知道选择那种语言呢?大家过来人有没有什么好多经验分享,有没有比较好的书籍?欢迎分享!

Ronald Liu

unread,
Jun 11, 2012, 10:01:33 PM6/11/12
to pon...@googlegroups.com
学正则表达式必须首推Perl。

xxmplus

unread,
Jun 11, 2012, 10:05:36 PM6/11/12
to pon...@googlegroups.com
python or ruby

2012/6/12 Ronald Liu <lzs...@gmail.com>

学正则表达式必须首推Perl。

在 2012年6月12日 上午1:59,Luo Luo <luolu...@gmail.com> 写道:
>  Hi, 我在打算开始学正则表达式和一种脚本语言,但是不知道选择那种语言呢?大家过来人有没有什么好多经验分享,有没有比较好的书籍?欢迎分享!

--
Any complex technology which doesn’t come with documentation must be the best
available.

Ronald Liu

unread,
Jun 11, 2012, 10:14:09 PM6/11/12
to pon...@googlegroups.com
我最常用的就是Python,可是那个正则表达式真的不太容易用。

Xinyu LIU

unread,
Jun 12, 2012, 12:44:16 AM6/12/12
to pon...@googlegroups.com
其实学好grep的用法也很有用的。

另外,在正则大行其道的今天,我仍然推荐学习自己写parser,因为毕竟有些东西是正则表达式不能解决的。而parser combinator已经有不少很好用的实现,包括Python和Haskell.

2012/6/12 Ronald Liu <lzs...@gmail.com>



--
Larry, LIU Xinyu
https://sites.google.com/site/algoxy/
https://github.com/liuxinyu95/AlgoXY

Úcarenya

unread,
Jun 12, 2012, 12:58:32 AM6/12/12
to pon...@googlegroups.com
本来正则就不是给程序员,而是给Engineer用的。

同意egrep学正则足够了,正规一些,其他工具如sed/awk里也都能用。

On 12:44 Tue 12 Jun , Xinyu LIU wrote:
> 其实学好grep的用法也很有用的。
>
> 另外,在正则大行其道的今天,我仍然推荐学习自己写parser,因为毕竟有些东西是正则
> 表达式不能解决的。而parser combinator已经有不少很好用的实现,包括Python和
> Haskell.
>
> 2012/6/12 Ronald Liu <lzs...@gmail.com>
>
> 我最常用的就是Python,可是那个正则表达式真的不太容易用。
>
> 在 2012年6月12日上午2:05,xxmplus <xxm...@gmail.com> 写道:
> > python or ruby
> >
> > 2012/6/12 Ronald Liu <lzs...@gmail.com>
> >>
> >> 学正则表达式必须首推Perl。
> >>
> >> 在 2012年6月12日上午1:59,Luo Luo <luolu...@gmail.com> 写道:
> >> > Hi,我在打算开始学正则表达式和一种脚本语言,但是不知道选择那种语言呢
> ?大家过来人有没有什么好多经验分享,有没有比较好的书籍?欢迎分享!
> >
> > --
> > Any complex technology which doesn’t come with documentation must be the
> > best
> > available.
>
> --
> Larry, LIU Xinyu
> https://sites.google.com/site/algoxy/
> https://github.com/liuxinyu95/AlgoXY
>

--
- Úcarenya - infernoxu at gmail dot com
- http://ucarenya.com/

@@

unread,
Jun 12, 2012, 1:59:38 AM6/12/12
to pon...@googlegroups.com
不这么觉得。
那些抓别人网站信息的做采集的不都是程序员。


2012/6/12 Úcarenya <infe...@gmail.com>

Atry

unread,
Jun 14, 2012, 9:34:41 PM6/14/12
to pon...@googlegroups.com
原来程序员和Engineer不是一码事!我一直以为程序员就是软件工程师的意思。难道是我进入职业生涯的方式不对?

Vincent Jia

unread,
Jun 15, 2012, 4:50:13 AM6/15/12
to pon...@googlegroups.com
请问程序员和Engineer的区别和联系?

Tux9

unread,
Jun 15, 2012, 9:36:02 AM6/15/12
to pon...@googlegroups.com
程序员是engineer 的一种,叫做software engineer

2012/6/12 Úcarenya <infe...@gmail.com>

Jawley

unread,
Jun 15, 2012, 10:57:19 AM6/15/12
to pon...@googlegroups.com
程序员也未必一定是工程师。

只要是写程序的,都可以叫程序员,但是程序未必一定要以工程为目的,也可以有很多其它用途,譬如科学计算或者算法研究。我想这可能是Úcarenya要表达的意思。

Michale Kobe

unread,
Jun 15, 2012, 11:42:39 PM6/15/12
to pon...@googlegroups.com
在 2012年6月12日 上午9:59,Luo Luo <luolu...@gmail.com> 写道:
> Hi, 我在打算开始学正则表达式和一种脚本语言,但是不知道选择那种语言呢?大家过来人有没有什么好多经验分享,有没有比较好的书籍?欢迎分享!

正则表达式大同小异,很多工具都有自己的正则表达式形式,不过差别不大。
语言的话,用Perl和python都行。
书籍Learning python和Learning Perl都行。

lzprgmr

unread,
Jun 16, 2012, 4:26:35 AM6/16/12
to pon...@googlegroups.com
我们公司也区分developer和engineer,后者一般是指搞系统管理的,其主要职责是让软硬件系统运作的高效、稳定(比如维护各种server,精通服务端软件的配置),平时脚本会写的比较多一点。 

说回到学习正则表达式,我当时是结合perl一起学的,因为要对一个很大的code base做重构,perl的文本处理能力是极强的,而其核心的正则表达式语法则是非常的简单+强大, 学习材料以前整理过一个豆列:http://book.douban.com/doulist/235597/
几点建议吧:
  • 多用到实际工作中去,利用perl的正则表达式+调用shell命令,很多工作都可以自动化了
  • 搜索时多从正则表达式入手,这点windows下的程序员比较明显,在UI(Visual Studio/N++)中搜索时,只输入一个关键词,然后在结果中肉眼搜索 - 半自动化方式。 强迫自己动点脑筋,既锻炼了正则表达式的书写能力,也提高了搜索精度。
  • perl其实可以像sed/grep那样在命令行使用:cat ivy.xml | perl -pe "s/ivy/IVY/" ; echo Hello, World | perl -pe "s/Hello/World/", 这样测试学习也会很方便



2012/6/16 Michale Kobe <zhangli...@gmail.com>

yiyang tian

unread,
Jun 16, 2012, 6:06:22 AM6/16/12
to pon...@googlegroups.com
学哪种脚本语言不重要,关键是学

Ray Song

unread,
Jun 16, 2012, 10:21:02 AM6/16/12
to pon...@googlegroups.com
On Sat, Jun 16, 2012 at 04:26:35PM +0800, lzprgmr wrote:
> 我们公司也区分developer和engineer,后者一般是指搞系统管理的,其主要职责是让软硬
> 件系统运作的高效、稳定(比如维护各种server,精通服务端软件的配置),平时脚本会
> 写的比较多一点。 
>
> 说回到学习正则表达式,我当时是结合perl一起学的,因为要对一个很大的code base做重
> 构,perl的文本处理能力是极强的,而其核心的正则表达式语法则是非常的简单+强大,学
> 习材料以前整理过一个豆列:http://book.douban.com/doulist/235597/
> 几点建议吧:
>
> • 多用到实际工作中去,利用perl的正则表达式+调用shell命令,很多工作都可以自动
> 化了
> • 搜索时多从正则表达式入手,这点windows下的程序员比较明显,在UI(Visual Studio
> /N++)中搜索时,只输入一个关键词,然后在结果中肉眼搜索 - 半自动化方式。强迫
> 自己动点脑筋,既锻炼了正则表达式的书写能力,也提高了搜索精度。
> • perl其实可以像sed/grep那样在命令行使用:cat ivy.xml | perl -pe "s/ivy/IVY/"
> ; echo Hello, World | perl -pe "s/Hello/World/",这样测试学习也会很方便
>
看到 echo xx | perl -pe 这种用法,总会让人想到 Useless Use of cat。
改用 abbrev 或者 alias 之后就不这么想了,特别是这样做可能更符合思考方式。

perl -pe 's/Hello/World/' <<< 'hello, world' 这样可能更好哦。
Reply all
Reply to author
Forward
0 new messages