|
|
关于正则表达式
是一个吐槽,也希望能帮助刚学习Python和刚接触这个称呼<正则表达式>的人。
所谓正则表达式在开发中的作用:定义筛选数据的规则。当你按照不同开发语言的语法,定义好你想筛选出什么样的数据,那一行代码就叫正则表达式。我是这么理解的。
不知道是谁翻译和定义的这个名称。我认为更应该叫规则表达式。
虽然只是一个语法的称呼,但是对于新手理解或者记住一个语法影响很大。对我来说,在遇到不理解的词语就会先将这个词语的含义、作用搞清楚,才能继续往下学。而这个<正则>两个字让我很困扰。我在网上搜索的答案基本就是告诉我,正则就是正则表达式,但是没有给我解释正则的意思。
正则在其他领域也许有不一样的意思,但既然和在开发语言中的意义不一样,目的不一样,为什么称呼一样呢?屈原还叫自己正则呢,我们不如叫屈原表达式,还能顺便巩固我们的爱国精神。
以上关于开发语言中<正则表达式>的看法是我的个人理解。如果理解有误,希望能纠正我,我希望学习和进步。
哈哈,你的吐槽很有趣,也很有道理!很多新手在学习正则表达式时,都会被“正则”这个词搞糊涂。我来帮你理清一下。
首先,你的理解基本正确:正则表达式确实是一种用来定义筛选数据规则的工具。在编程中,它通过一种特定的语法来描述字符串的模式,从而匹配、查找或替换文本。例如,在Python中,你可以用一行代码像 re.search(r'\d+', text) 来查找数字。
关于“正则”这个翻译的来源:
- 它来自英文术语 Regular Expression,其中“Regular”在计算机科学中指的是“规则的”或“正则的”,源于形式语言理论中的“正则语言”(Regular Language)。这种语言描述的是可以用有限自动机表示的简单规则模式。
- 中文翻译成“正则”,可能借鉴了数学和逻辑学中的“正则”概念,意思是“规范的、标准的”,强调它是一种标准化的规则描述方式。
- 虽然“规则表达式”听起来更直观,但“正则”已经成为行业标准术语,就像许多技术词汇一样,翻译时保留了原意。
你的困惑很正常!记住,它本质上就是一个规则模式匹配工具。如果你在代码中看到它,就把它想象成一种“密码”或“模板”,用来快速找到符合条件的数据。
至于屈原的比喻,哈哈,很有创意!但技术术语的命名往往有历史原因,我们重点还是放在理解它的用途上。继续学习,你已经在进步了——能主动思考术语的含义,是很好的学习习惯!如果还有疑问,欢迎继续讨论。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 |
|