正则表达式(英語:regular expression,常简写为regex、regexp或RE),又称規律表達式、正規表示式、正規表示法、規則運算式、常規表示法,是计算机科学概念,用簡單字串来描述、匹配文中全部符合指定格式的字串,現在很多文本编辑器都支援用正則表达式搜尋、取代符合指定格式的字串。...
41 KB (2,889 words) - 17:16, 16 June 2024
c},S是起始符号,P包含下述规则: S -> aS S -> bA A -> ε A -> cA 这个文法描述的语言也可以用正则表达式a*bc* 来表达。 正则文法描述的语言构成了正则语言类,正则语言类中的语言也可以由有限状态自动机或正则表达式来表达。 乔姆斯基谱系 正则语言 正则表达式 有限状态自动机...
1 KB (163 words) - 11:39, 29 September 2018
正则语言又称正规语言是满足下述相互等价的一组条件的一类形式语言: 可被确定有限状态自动机识别; 可被非确定有限状态自动机识别; 可被只读图灵机识别; 可用正则表达式描述; 可用正则文法生成。 可用前缀文法生成。 所有的有限语言都是正则的。 字母表{a, b}上包含偶数个a的所有字串构成的语言是正则的。...
5 KB (729 words) - 01:43, 4 January 2022
汤普森构造法 (section 子表达式运算的构造规则)
汤普森构造法在计算机科学中是指一个能将正则表达式转化为一个与之等价的非确定有限状态自动机(NFA)的算法。算法得到的NFA可以在编程中用于匹配一个正则表达式,这也是正则表达式引擎实现的基本思路之一。 正则表达式和非确定有限状态自动机是形式语言的两种不同的抽象表达...
4 KB (587 words) - 15:10, 10 April 2021
通过形式文法来产生(参见乔姆斯基谱系)。 正则表达式是一种很多编程语言和库都支持的语法,这种语法可以用于匹配符合一定条件的字符串,经常用于文本的搜索和过滤。从名称上来说,正则表达式应当是对应于正则语言的,在形式语言领域内所称的正则表达式确实如此。不过,在实际的编程语言中,很多正则表达式已经通过引入复杂的扩展,可以匹配正则表达式...
8 KB (1,067 words) - 19:57, 28 July 2024
倾斜牙签综合征 (category 正则表达式)
下述Perl正则表达式用来匹配在某个FTP服务器的pub目录下的文档的URI: m/ftp:\/\/[^\/]*\/pub\// Perl通过允许正则表达式使用其它分界符来解决倾斜牙签综合症。例如,下述三个正则表达式均等价于上例: m{ftp://[^/]*/pub/}...
4 KB (574 words) - 02:46, 20 March 2021
形式上,一个解析表达文法由以下部分组成: 一个有限的非终结符的集合 N 一个有限的终结符的集合 Σ,和 N 没有交集 一个有限的解析规则的集合 P 一个被称作开始表达式的解析表达式 eS P 中的每一个解析规则以 A ← e 的形式出现,这里 A 是一个非终结符,e 是一个解析表达式。解析表达式是类似正则表达式的层次表达式:...
16 KB (2,360 words) - 10:43, 28 April 2024
把上述关于能量⟨E⟩的表达式代入全微分F,得到与 热力学第一定律相似的表达式: d ⟨ E ⟩ = T d S − ⟨ p ⟩ d V {\displaystyle d\langle E\rangle =TdS-\langle p\rangle dV} 。 能量涨落: 正则系综描述中,系统的能量具有不确定性。...
6 KB (927 words) - 06:45, 13 March 2020
正则表达式的文本进行搜索,并只输出匹配(或者不匹配)的行或文本。 grep這個應用程式最早由肯·汤普逊寫成。grep原先是ed下的一個應用程式,名稱來自於g/re/p(globally search a regular expression and print,以正则表达式...
7 KB (1,017 words) - 20:06, 11 June 2023
Access中,通配符可用于"LIKE"表达式中,星号(*)匹配零个或多个字符,问号(?)匹配单个字符。在 SAP 中加号(+)匹配一个字符。 在正则表达式中,英文句号(.)匹配单个字符,结合一个星号(.*)匹配任意多个字符。 在针对较长字符串匹配或对大量的字符串进行匹配时应该注意,后匹配(ABC*...
3 KB (456 words) - 07:59, 13 March 2023
三种运算可用: 整数:加、减、乘、除、求余数 字符串:匹配正则表达式;某些版本上还可以查找一组字符("index")、子字符串("substr"),求字符串长度("length") 两者皆可:比较(如:相等、不等、小于) 下面是一个涉及布尔表达式的(不符合POSIX标准)例子: expr length...
3 KB (341 words) - 08:27, 17 January 2024
inputFileName > outputFileName 在某些版本的sed中,表达式的前面必须加上-e,以表示后面跟着一个表达式。s表示替换,而g表示全局,这意味着行中的所有匹配项都将被替换。要搜索的正则表达式(即pattern)放在第一个分隔符号(此处为斜杠)之后,而要替换成的字符串跟在第二...
21 KB (2,702 words) - 00:25, 19 December 2024
上人类的手工复制与粘贴,尤其是在某些网站采取技术手段禁止自动化网页抓取的情况下,人工的复制与粘贴就成了唯一的解决方案。 文本搜索与正则表达式:文本搜索并且配合正则表达式可以有效的从页面上提取需要的内容。在基于UNIX的系统上可以使用grep,在其他平台或其他编程语言(例如Perl,Python)中也有相应的命令或语法。...
3 KB (414 words) - 04:53, 11 November 2023
pgrep为一命令行工具,本为Solaris 7而编写,后又衍出Linux与BSD系操作系统的对应实现。这一命令可搜索出所有名字与所给正则表达式相匹配的进程,而后在默认情况下返回相应进程标识符;若带上-2为参数,则一并返回进程名。除此之外,还可指定搜索的进程组范围(-g)、进程所属用户(-u)、是否最近启动进程(-n)与反转搜索(-v)。...
1 KB (155 words) - 06:48, 28 January 2024
元字符(Metacharacter),指SHELL直譯器或正则表达式(regex)引擎等计算机程序中具有特殊意义的字符。 在POSIX擴展正则表达式裡,定义了14个元字符,它们被作为一般的字符使用时,必须要通过「转义」(前面加一个反斜杠「\」)来去除他们本身的特殊意义,这些元字符包括: 开和闭方括号:"["和"]"...
2 KB (175 words) - 22:19, 18 December 2020
解释为"重复"。 设 Σ 是有限集合("字母表")并设 A 是在 Σ 上所有正则表达式的集合。我们认为两个正则表达式是相等的,如果它们描述同样的语言。则 A 形成一个 Kleene 代数。事实上,这是自由 Kleene 代数,在正则表达式上的任何等式都从 Kleene 代数的公理得出,并且因此在所有 Kleene...
7 KB (1,153 words) - 02:12, 25 February 2023
粹的正则表达式是不递归的,这带给了SNOBOL4模式,在计算上的明确优势;当前版本的AWK和Perl的“正则表达式”,实际上是对正则语言意义上的正则表达式的扩展(递归表达式于2007年十二月发行的Perl 5.10中仍未出现)。 SNOBOL的设计者之一Ralph...
15 KB (1,777 words) - 12:47, 6 March 2024
Scintilla (category 自由發展元件與函式庫)
代码断点等行标记。可以添加其他功能,例如語法摺疊和自动完成。基本的正则表达式搜索实现不成熟,但如果使用C++11编译,Scintilla可以支持运行时的正则表达式引擎。也可以通过直接缓冲区来替换或避免使用Scintilla的正则表达式库。 目前,Scintilla对从右到左的语言提供了实验性支持。...
7 KB (502 words) - 15:20, 30 July 2024
此命令将指定行发送到标准输出设备。 它与find命令相似。然而,find命令支持UTF-16,而findstr不支持。另一方面,findstr支持正则表达式,但find不支持。 findstr最早在Windows 2000 Resource Kit下以名称qgrep发行。 findstr无法搜索到Unicode文件中常见的空字符。...
6 KB (538 words) - 08:34, 17 January 2024
Computer Solutions在1994年創造。UltraEdit有很强大的编程功能,支持巨集、語法高亮度顯示和正则表达式等功能,可以編輯超大文件(4GB甚至更多)。檔案在標籤中可以被瀏覽和編輯。UltraEdit也支援以Unicode和hex編輯的模式。官方網站提供30天試用版本的軟體下載。...
2 KB (104 words) - 15:54, 9 May 2024
作用代数的无星号片段的等式理论中,这些不包含星号的等式,可以证明是相符于克莱尼代数的等式理论,也叫做正则表达式等式。在上述公理构成正则表达式的有限公理化的意义上。Redko 在 1967 年证明了这些等式没有有限公理化,約翰·何頓·康威在 1971 年对此给出更短的证明。Salomaa 给出了公理化这个理论的等式模式,Kozen...
5 KB (988 words) - 00:43, 13 March 2013
它的创始人阿尔佛雷德·艾侯、彼得·溫伯格和布萊恩·柯林漢姓氏的首个字母)的最大功能取决于一个人所拥有的知识。AWK提供了极其强大的功能:可以进行正则表达式的匹配,样式装入、流控制、数学运算符、进程控制语句甚至于内置的变量和函数。它具备了一个完整的语言所应具有的几乎所有精美特性。实际上AWK的确拥有...
19 KB (2,627 words) - 22:40, 18 December 2024
"*h") bash 3.0支持进程内的正则表达式,使用下面的语法: [[ string =~ regex ]] 正则表达式语法同regex(7) man page所描述的一致。正则表达式匹配字符串时上述命令的退出状态为0,不匹配为1。正则表达式中用圆括号括起的子表达式可以访问shell变量BASH_REMATCH,如下:...
24 KB (3,239 words) - 04:58, 25 June 2023
超文本传输协议 JCS - 分散式快取系统 JMeter - 压力测试工具 ORO - Java類別函式庫,提供与Perl5兼容的正则表达式功能 Regexp - 纯Java正则表达式函式庫 Slide - 内容儲存函式庫,主要使用WebDAV Taglibs - 一个代码库,用于支持开发定制化的JSP tag...
3 KB (348 words) - 20:28, 9 July 2022
b键或Ctrl+B键 往回k屏幕。默认值为1。仅对文件有效,对管道无效。 =键 显示当前行号。 /键+正则表达式 搜索第k次出现的正则表达式。默认值为1。 n键 搜索第k次出现的最后用过的正则表达式。默认值为1。 !键+命令或:键+!键+命令 在一个子shell中启动指定命令。 v键...
6 KB (881 words) - 06:39, 23 October 2024
在60年代,肯·汤普逊还参与了正则表达式的设计,开发了QED(英语:QED (text editor))的相容分時系統版本,并在其中引入正则表达式支持。QED和后来由汤普逊编写的ed编辑器对正则表达式的流行做出了重要贡献。之后正则表达式普遍用于Unix的文本处理程序中。现在,几乎所有使用正则表达式...
20 KB (1,966 words) - 02:05, 3 April 2024
Kleene 星号被應用在一個集合 V {\displaystyle V} 時,寫法是 V ∗ {\displaystyle V^{*}} 。它被廣泛用於正则表达式。 假定 V 0 = { ϵ } {\displaystyle V_{0}=\{\epsilon \}\,} 递归的定义集合 V i + 1 =...
3 KB (537 words) - 22:09, 20 December 2021
新实现过它。汤普逊版本的qed曾因首先实现了正则表达式而著名。正则表达式也实现于ed中,尽管相比qed中的这里实现的要相当不具一般性。 丹尼斯·里奇生产了后来道格拉斯·麥克羅伊所描述的“终极”ed,ed的各方面转而影响了ex,它依次又产生了vi。非交互式Unix命令grep受到qed和后来的ed常...
10 KB (1,420 words) - 13:30, 6 August 2023
符串的输入,而且创建的分析器代码是直接编码格式的(而非查表格式),具有较高的分词速度。另外,Quex在描述词法分析的语法上采用了类似于C++的继承语法和分模块语法,这使得语法的复用非常简单,语法结构更为清晰。 Quex使用传统的汤普森创造法,从从正则表达式首先创建不确定性有限状态机...
6 KB (856 words) - 16:20, 8 February 2021
UTF-8 (section 不利于正则表达式检索)
汉字不是按读音排序的,所以不利于用正则表达式检索。虽然正则表达式检索并未考虑中文的多音字,但是由于中文的多音字数量不多,不少多音字还是同音不同调类型的多音字,所以大多数情况下正则表达式检索是还可以接受的。不过 Unicode 汉字按部首排序,因此在只知道一個字的部首而不知道如何發音的情况下,UTF-8 可用正则表达式检索而 GBK...
37 KB (5,047 words) - 09:24, 23 May 2024
来说:词法分析器能够将括号识别为标记,但并不保证括号是否匹配。 针对如下C语言表达式: sum=3+2; 将其标记化后可以得到下表内容: 标记经常使用正则表达式进行定义,像lex一类的词法分析器生成器就支持使用正则表达式。语法分析器读取输入字符流、从中识别出语素、最后生成不同类型的标记。其间一旦发现无效标记,便会报错。...
4 KB (657 words) - 15:30, 23 July 2023