Regular Expression 为何会翻译成正则表达式,而不是规则表达式
Regular Expression 为何会翻译成正则表达式,而不是规则表达式
kinboy · 9 小时 44 分钟前 via Android · 3141 次点击
一直对正则二字的含义不理解,所以去查了下,原来是古汉语词汇,意为:常规,规则
以下是百度百科的引用
正则是一个汉语词汇,拼音为 zhèng zé,基本意思是正其*仪法则;正规;常规;正宗等。出自《楚辞·离骚》、《插图本中国文学史》、《东京赋》等文献。
那么为什么当初不翻译成更加浅显易懂的规则表达式呢?
44 条回复 • 2021-08-16 16:18:28 +08:00
1
feather12315 9 小时 0 分钟前 via Android 还有个翻译:正规表达式
|
2
IgniteWhite 8 小时 55 分钟前 https://zh.wikipedia.org/wiki/%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%BC%8F#%E8%AD%AF%E5%90%8D%E5%95%8F%E9%A1%8C
Regular Expression 的 Regular 一般被譯為正则、正规或常規。此處的 Regular 即是規則、規律的意思,Regular Expression 即「描述某種規則的表達式」之意。 |
3
jorneyr 8 小时 48 分钟前 7 翻译为正则,首先没错,二是翻译的人文学素养比你的建议强很多。
|
4
silkriver 8 小时 43 分钟前 汉语词汇丰富,各种写法通常也能让人秒懂,*终确定规范时基本上就是看谁定的词接受度更高一点
|
5
weixiangzhe 8 小时 43 分钟前 via iPhone 4 可能是我文学素养 确实太低了,好多英文我看懂了中文还是没有看懂吧
|
6
weixiangzhe 8 小时 38 分钟前 x(?=y) 先行断言 Lookahead assertion: (positive lookahead) Matches “x” only if “x” is followed by “y”. For example, /Jack(?=Sprat)/ matches “Jack” only if it is followed by “Sprat”. `/Jack(?=Sprat
x(?!y) 正向否定查找 Negative lookahead assertion: Matches “x” only if “x” is not followed by “y”. For example, /\d+(?!\.)/ matches a number only if it is not followed by a decimal point. /\d+(?!\.)/.exec(‘3.141’) matches “141” but not “3”. (?<=y)x 后行断言 Lookbehind assertion: Matches “x” only if “x” is preceded by “y”. For example, /(?<=Jack)Sprat/ matches “Sprat” only if it is preceded by “Jack”. `/(?<=Jack (?<!y)x 反向否定查找 Negative lookbehind assertion: Matches “x” only if “x” is not preceded by “y”. For example, /(?<!-)\d+/ matches a number only if it is not preceded by a minus sign. /(?<!-)\d+/.exec(‘3’) matches “3”. /(?<!-)\d+/.exec(‘-3’) match is not found because the number is preceded by the minus sign. __ |
7
IgniteWhite 8 小时 36 分钟前 5 实用角度出发:比如我问你,这个正则怎么写?你肯定知道我说的是正则表达式。
如果是规则表达式:这个规则怎么写?你会问我,什么规则?我说,匹配的那个规则。你问,各种 wildcard 和 globbing 都是匹配的规则,你说的哪个。我说,规则表达式那个。 |
8
vopin 8 小时 21 分钟前 via iPhone 1 有可能是翻译的日语 正規表現
*近发现日语的数学、计算机词汇和中文很像 |
9
Leonard 8 小时 17 分钟前 12 专有名词翻译成一个非常用词,使用起来比较会没有歧义
|
10
anjianshi 8 小时 16 分钟前 编程词汇翻译还扯什么文学素养,装逼…
|
11
FakNoCNName 8 小时 11 分钟前 @anjianshi 难道你看现在这些年翻译的东西没觉得更难理解、更恶心吗。
现在的狗屁翻译,干脆都不翻译了,直接音译过来。 |
12
SilentDepth 8 小时 9 分钟前 via iPad @anjianshi #10 不然。翻译就是翻译,跟主题无关。好的翻译对文学素养是有要求的。
|
13
kenvix 7 小时 59 分钟前 @anjianshi 不管什么领域,翻译都应该讲究信达雅
|
14
luckykong 7 小时 58 分钟前 via Android 1 @weixiangzhe 先行断言 和 Lookahead assertion,这两个哪一个都不好理解吧。好理解的是后面的英文解释说明。 但这样的话翻译成中文,也很容易理解啊
|
15
silkriver 7 小时 57 分钟前 追究一个词是古汉语词汇还是日语词汇是没有意义的,只要遵循汉语的基本法就是汉语。walkman 是日本人生造的,但它就是个英语单词。
|
16
huang119412 7 小时 56 分钟前 鲁棒性不服,感觉像拿着棒子打人?
|
17
koast 7 小时 53 分钟前 via Android @weixiangzhe #6 确实,这些中文翻译我一开始看了就???看了英语原文之后也能理解为什么这么翻译,但是不得不说,这种翻译方法不是很直观(指看到词能猜到大概意思)
|
18
laoyur 7 小时 36 分钟前 @huang119412 看起来 说文学素养是装逼 的那人应该会喜欢 鲁棒性 这个翻译吧
|
19
Mohanson 7 小时 21 分钟前 句柄…
|
20
plko345 6 小时 59 分钟前 via Android 正则这个翻译很有水平啊
|
21
fredli 6 小时 58 分钟前 有意思,这个翻译是大陆*先的么?还是香港台湾传过来的?
|
22
lujjjh 6 小时 57 分钟前 很多词数学里也有,像函数( function )、正则( regular ),虽然 CS 领域的意思不太一样,但是翻译借鉴过来了。
不同地区的翻译也有区别,比如台湾就是把 regular expression 翻译成规则运算式。 |
23
southsala 6 小时 50 分钟前 我刚学编程的时候,不明白健壮性是个什么鬼,编程和健身有什么关系。
|
24
aguesuka 6 小时 48 分钟前 regularization = 正规化(数学)
normalizer = 中心化子和正规化子 (Centralizer and normalizer) 范畴学. 至少把这两个先区分再说有水平吧. 作为业余译者, 直觉上 “positivity” 才应该是 “正规”, 其它两个应该都应该换个翻译. |
25
nullcoder 6 小时 42 分钟前 @Leonard “专有名词翻译成一个非常用词,使用起来比较会没有歧义”
体会一下 memory 这个词在英语里的意思,觉不觉得这个词比起“内存”很形象? |
26
aguesuka 6 小时 30 分钟前 如果要重新翻译”正则”, 应该是意译, 需要蕴含 “字符串匹配表达式” 的含义, 或者像 “cron 表达式” 一样不要翻译. 直译”成规则”就是又重走把 “function” 翻译成 “函数” 的路, 也不好.
|
27
securityCoding 6 小时 28 分钟前 via Android @huang119412 这个鲁棒性真的是日了狗
|
28
mekingname 6 小时 27 分钟前 我理解的是:正则=> 如果[正]确[则]提取。
如果你的 pattern 写得正确,符合目标数据的格式,则把目标数据提取出来 |
29
aguesuka 6 小时 8 分钟前 @jorneyr
https://ja.wikipedia.org/wiki/%E6%AD%A3%E8%A6%8F%E8%A1%A8%E7%8F%BE 和制汉语正規表現(せいきひょうげん、英: regular expression ). 和人文素养没有关系 |
30
aoeui 5 小时 51 分钟前 via Android @huang119412
鲁棒性 台译:強健性 句柄 台译:把手 |
31
PrinceofInj 5 小时 20 分钟前 via Android 这个翻译可以把鲁棒按在地上摩擦。
|
32
falcon05 5 小时 15 分钟前 via iPhone 规则表达式明显比较直观和准确,正则表达式?什么是正则,那反则表达式呢?
|
33
kinboy 5 小时 14 分钟前 via Android @IgniteWhite wildcard 翻译为通配符,就是一个不错的示例,可以是一个专用汉语名词,也容易理解,基本上*次解除也能猜出个大概意思。
但是正则这个词在现代汉语中的使用频率应该非常低了,不去查一下还真不知道是什么意思 |
34
kinboy 5 小时 7 分钟前 via Android @jorneyr 好的,谢谢
|
35
kinboy 5 小时 6 分钟前 via Android 1 @laoyur 哈哈哈说起鲁棒总是会想起鲁智深手持大棒 ?
|
36
jorneyr 4 小时 51 分钟前 @aguesuka 可能你没注意,我提的是正则这个词的翻译比楼主提的规则从文学素养上来说更好,只是针对这个词,与其他方面无关。上面很多人也从各个方面进行了分析,大多人也认同正则比规则更合适。
|
37
libook 4 小时 8 分钟前 正则表达式的发明者是一个数学家,正则表达式是“形式语言学”的范畴,这一开始是属于数学领域的。
早先计算机还只是数学学科下的一个子学科,大量的概念都是来自于数学中的概念,比如咱们耳熟能详的函数;按照题主的思路,function 应该翻译成“功能”。 在数学中有很多跟 regualr 相关的概念,中文都是被翻译成正则,正则表达式可能是为了翻译上的统一性,所以也翻译成了正则。 至于数学上为什么这样翻译,有兴趣的人可以去考究一下,这个可能比较难,因为数学是一门古老的学科,有些数学概念甚至是古代的时候产生的,用的名字也是古汉语(比如勾股定理),以至于如今人们会觉得晦涩难懂。我个人更倾向的推测是,“正”是动词或副词性,“则”为名词性。 翻译成“规则表达式”确实浅显了,但不易懂,因为“规则”的含义太通用了,反而不能让人快速联想到是众多“规则”里的哪一种,而且并不是所有可以用来匹配字符串的“规则”都是 Regular Expression 。 即便是英语,同一个词汇在不同的语境下的意思也可能不一样,词典上的对照不是铁律,只是一种辅助意会的工具,否则机器翻译技术就不会那么难了。 |
38
falcon05 3 小时 43 分钟前 via iPhone @libook 不要拿数学当挡箭牌好吗?数学还讲究对称呢?有正数有负数,有正则表达式,那负则表达式呢?
|
39
autoxbc 3 小时 29 分钟前 1 译名一旦形成就没什么可争论了,举个例子:
近代翻译大家「严复」都知道吧,没人敢说比他更懂翻译,他非常执着的要把今天常用的「社会」(Society)一词翻译为「群」,你说严复对还是不对,这个事已经无法深究了。而「社会」其实是个日本造汉字词,这又涉及到现代汉语里大量的日本造汉字词,这又是另一个话题了 |
40
Kilerd 3 小时 11 分钟前 技术圈的中文翻译你跟我说文学素养?
robust 鲁棒性 socket 套接字( socket programing 套接字编程) 还有吧 goroutine 翻译成 「 go 程」 的 |
41
Biwood 3 小时 9 分钟前 *次听说“正则表达式”这个词语,感觉挺唬人的,直到后来真正学习了并且用起来之后才发现,也就那样…
查了一下 对比一下,会发现“正则”的歧义更少。这大概是语言的接受程度跟语言本身的独特性中间的一种取舍。 |
42
generic 2 小时 15 分钟前 @Leonard 那你把数学里 群,环,格,特征,理想 等等常用到不能再常用的词,给换个“比较会没有歧义”的版本呗
|
43
Leonard 2 小时 0 分钟前 @generic #42 我换了又不算
|
44
adoal 1 小时 27 分钟前 可能*个这么翻译的人是刘仁轨的粉丝。
|