正则 匹配 字符串 某个字符多少个

先来看看正则表达式的语法:

正则表达式匹配单个字符 正则表达式匹配某个字符串正则表达式匹配单个字符 正则表达式匹配某个字符串


正则表达式匹配单个字符 正则表达式匹配某个字符串


[abc] a或b或c . 任意单个字符 a? 零个或一个a

[^abc] 任意不是abc的字符 s 空格 a 零个或多个a

[a-z] a-z的任意字符 S 非空格 a+ 一个或多个a

[a-zA-Z] a-z或A-Z d 任意数字 a{n} 正好出现n次a

^ 一行开头 D 任意非数字 a{n,} 至少出现n次a

$ 一行末尾 w 任意字母数字或下划线 a{n,m} 出现n-m次a

(...) 括号用于分组 W 任意非字母数字或下划线 a? 零个或多个a(非贪婪)

(a|b) a或b b 单词边界 (a)...1 引用分组

(?=a) 前面有a (?!a) 前面没有a B 非单词边界

正则表达式中有(?=a)和(?!a)来表示我们是否需要匹配某个东西。

所以,有需要不匹配某样内容时,就可以用(?!a)了。比如要匹配不含hello的字符串就可以这样写。

代码如下:

^(?!.hello)

这里.用来表示hello之前可能有其他的字符,为什么还要加^呢,因为如果不加的话,可能匹配到h之后的这个位置上了。

现在就可以解决regex golf上的abba这道题了。

这道题是去匹配不含abba这种形式的单词,比如abba,lagmatic就不应该匹配上。

正则表达式代码:

代码如下:

^(?!.(.)(.)21)

然后利用不匹配,还可以解决prime这道题,这道题匹配有素数个x的串,先看正则。

代码如下:

^(?!(xx+)1+$)

(xx+)是匹配2个及2个以上的x,(xx+)1+就是匹配重复出现2个及以上的串,所以(xx+)1+就表示了那些非素数的串,那么素数串就是除去这些非素数串,即是以上的正则表达式了。

正则表达式

regular expression是计算机科学中的一个概念。正则表达式使用单个字符串来描述匹配一系列符合某个句法规则的字符串。

g全文搜索,i忽略大小写,m多行搜索

具有特殊意义的专用字符,用来规定其前导字符

( [ { ^ $ | ) ? + .

不同组合中的元字符有不同的意义,举例

可以使用[]来构建一个简单的类

var reg = /[abc123]/;

创建一个单字符的类,代表这个字符可以是a,可以是b,可以是c,可以是1,...可以是3。

可以使用^来进行取反,

var reg = /[^abc123]/;

代表着这个单字符可以是任何其他的单字符,除了a,b,c,1,2,3之外。

如果要匹配单个字符,让单字符只能取数字的话,可以使用字符类

写成:

var reg = /[0123456789]/;

这么写比较麻烦,所以可以使用范围类,我们可以使用x-y来连接两个字符,表示从x到y的任意字符,是个 闭区间 ,意味着 包含x和y本身 ,这样,我们要匹配单个数字就可以写成:

var reg2 = /[0-9]/;

要匹配所以的单个字母,可以写为

var reg3 = /[a-zA-Z]/;

上面创建了一些类,用来表示数组,字母等。但是这么写也比较麻烦,正则表达式提供了几个常见的预定义类来匹配常见的字符

有了这些预定义类,写一些正则就比较方便了,比如我们希望匹配一个ab+数字+任意字符的字符串,就可以写作:

var reg = /abd./;

正则表达式还提供了几个常用的边界匹配字符

^如果不写在[]内的话,不代表取反,代表以xxx开头,例如: var reg = /hello/; 代表以hello开头,相应的也有$表示为以xxx结尾,举例说明:

单词边界

之前写的方法都是一一匹配的,但是如果希望匹配一个连续出现很多次的字符,例如数字的字符串,不需要写成 dddd ,我们可以使用量词

使用举例:

上面提到的{n,m},如果出现多次,只要是n-m中的值都满足条件,到底是按照n还是m来匹配。 量词在默认条件下是尽可能多的匹配的,即默认贪婪模式

var reg = /d{3,5}/g; '123456789'.match(reg); //{"12345","6789"}

与贪婪模式相对的,就有非贪婪模式,即尽可能少的匹配,一旦成功匹配之后不再继续尝试,在后面加上?即可

var reg2 = /d{3,5}?/g; '123456789'.match(reg); //{"12345","6789"}

上面的量词解决的是单个字符重复多次的问题,如果我们需要匹配重复的多个字符,比如匹配hello出现20次,如果写成hello{20}意味着是hell+o出现20次,o自己重复20次,而不是整个hello重复20次。

我们可以使用分组()来解决这个问题,写成:

/(hello){20}/g;

对于上面的情况,如果我们希望匹配hello或者world出现20次,可以通过使用 | 进行或作

/(hello|world){20}/g;

举例: good(?=Bayon) 匹配后面有Bayon的good

检测字符串参数中是否存在正则表达式模式,存在返回true不存在返回false

用于正则表达式模式在字符串中运行查找,如果exec()找到了匹配的文本,则返回一个结果数组,否则返回null

除了数组元素和length属性之外,exec()方法返回对象还包括两个属性。

举例说明:

search()方法用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串。

search方法不执行全局匹配,它将忽略标志g,同时也忽略正则表达式对象的lastIndex属性,总是返回字符串的个匹配的位置

match()方法将检索字符串,以找到一个或者多个与regexp匹配的文本。regexp是否有全局g标志会影响结果。

关于string对象的replace方法,一般可以传入两个字符串,但是只能replace一次,如果把个参数传入regexp的话,就可以是replace变得灵活。

经常使用split方法把字符串分割为字符数组

'a,b,c,d'.split(","); // ["a","b","c","d"];

相应的,也可以使用regexp进行切割:

"a1b2c3".split(/d/); // ["a","b","c","d"]

正则表达式 选中以某些字符开始,某些字符结尾的字符串

匹配以abc开头,以xyz结尾的字符串

abc.xyz 等价于 abc(.)xyz

解释:

.匹配除换行符 n 之外的任何单个字符。 若要匹配包括 n 在内的任意字符,请使用诸如 [sS] 之类的模式。

零次或多次匹配前面的字符或子表达式。等效于 {0,}。

^ab[w]+12$

如果是整个连续的:bab[w]+12b也行,如果有非字符,可用.+

ab.?12

ab开头12结尾

正则表达式

正则表达式:REGEXP,REGular EXPression。

正则表达式分为两类:

//元字符

. //任意单个字符

[] //匹配指定范围内的任意单个字符

[^] //匹配指定范围外的任意单个字符//匹配次数(贪婪模式)

//匹配其前面的任意单个字符任意次

. //任意长度的任意字符

? //匹配其前面的任意单个字符1次或0次

+ //匹配其前面的任意单个字符至少1次

{m,n} //匹配其前面的任意单个字符至少m次,至多n次//位置锚定

^ //锚定行首,此字符后面的任意单个字符必须出现在行首

$ //锚定行尾,此字符前面的任意单个字符必须出现在行尾

^$ //空白行

或b //锚定词首,其后面的任意单个字符必须作为单词首部出现

>或b //锚定词尾,其前面的任意单个字符必须作为单词尾部出现

/分组

()

例:(ab)

//后向引用

1 //引用个左括号以及与之对应的右括号所包括的所有内容

2 //引用第二个左括号以及与之对应的右括号所包括的所有内容

//字符匹配

. //匹配任意单个字符

[] //匹配指定范围内的任意单个字符

[^] //匹配指定范围外的任意单个字符//次数匹配

//匹配其前面的任意单个字符任意次

? //匹配其前面的任意单个字符1次或0次

+ //匹配其前面的任意单个字符至少1次

{m,n} //匹配其前面的任意单个字符至少m次,至多n次

//位置锚定

^ //锚定行首,此字符后面的任意单个字符必须出现在行首

$ //锚定行尾,此字符前面的任意单个字符必须出现在行尾

^$ //空白行

或b //锚定词首,其后面的任意单个字符必须作为单词首部出现

>或b //锚定词尾,其前面的任意单个字符必须作为单词尾部出现//分组

() //分组

1 , 2 , 3 ,....

例:(ab)

//后向引用

1 //引用个左括号以及与之对应的右括号所包括的所有内容

2 //引用第二个左括号以及与之对应的右括号所包括的所有内容//或者

| //or 默认匹配 的整个左侧或者整个右侧的内容

//例:C|cat表示C或者cat,要想表示Cat或者cat则需要使用分组,如(C|c)at

/"}" class="syl-plugin-formula">

怎样获取正则表达式匹配字符串的一部分

使用正则表达式获取匹配字符串时

Pattern mpattern = "(.?)");

Matcher mmatcher = mpattern.matcher(xml);

ArrayList arrayList_title = new ArrayList();

while(mmatcher.find())

arrayList_title.add(mmatcher.group());

2.1 元字符

在正则表达式中,元字符(Metacharacter)是一类非常特殊的字符,它能够匹配一个位置或字符中的一个字符,如:、 w等。根据功能,元字符可以分为两种类型:匹配位置的元字符和匹配字符的元字符。

2.1.1 匹配位置的元字符

包括:^、$、和b。其中^(脱字符号)和$(美元符号)都匹配一个位置,分别匹配行的开始和结尾。比如,^string匹配以string开头的行,string$匹配以string结尾的行。^string$匹配以string开始和结尾的行。单个$匹配一个空行。单个^匹配任意行。b匹配单词的开始和结尾,如:bstr匹配以str开始的单词,但b不匹配空格、标点符号或换行符号,所以,bstr可以匹配string、string fomat等单词。bstr正则表达式匹配的字符串必须以str开头,并且str以前是单词的分界处,但此正则表达式不能限定str之后的字符串形式。以下正则表达式匹配以ing结尾的字符串,如string、This is a string等

Ingb

正则表达式ingb匹配的字符串必须以ing结尾,并且ing后是分界符,以下正则表达式匹配一个完整的单词:bstringb。

2.1.2 匹配字符的元字符

匹配字符的元字符有7个:.(点号)、w、W、、s、S、d和D。其中点号匹配除换行之外的任意字符;w匹配单词字符(包括字母、汉字、下划线和数字);W匹配任意非单词字符、s匹配任意的空白字符,如空格、制表符、换行等;S匹配任意的非空白字符;d匹配任意数字字符;D匹配任意的非数字字符。如:

^.$匹配一个非空行,在该行中可以包含除了换行符以外的任意字符。

^w$匹配一个非空行,并且该行中只能包含字母、数字、下划线和汉字中的任意字符。

bawwwwwwb匹配以字母a开头长度等于7的任意单词

bawwwdddDb匹配以字母a开头后面有3个字符三个数字和1个非数字字符长度等于8的单词

2.2 字符类

字符类是一个字符,如果该字符中的任何一个字符被匹配,则它会找到该匹配项。字符类可以在[](方括号)中定义。如:

[012345]可以匹配数字0到5中的任意一个。

可以匹配HTML标签中的H1到H6。

[Jj]ack可以匹配字符串Jack或jack。

正则表达式怎么匹配前面紧跟某个字符串的字符

正则表达式

是由普通字符(例如字符 a 到 z)以及特殊字符(称为元字符)组成的文字模式。正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。

可以通过在一对分隔符之间放入表达式模式的各种组件来构造一个正则表达式,即/expression/

普通字符

由所有那些未显式指定为元字符的打印和非打印字符组成。这包括所有的大写和小写字母字符,所有数字,所有标点符号以及一些符号。

非打印字符

字符 含义

cx 匹配由x指明的控制字符。例如, cM 匹配一个 Control-M 或回车符。x 的值必须为 A-Z 或 a-z 之一。否则,将 c 视为一个原义的 'c' 字符。

f 匹配一个换页符。等价于 x0c 和 cL。

n 匹配一个换行符。等价于 x0a 和 cJ。

r 匹配一个回车符。等价于 x0d 和 cM。

s 匹配任何空白字符,包括空格、制表符、换页符等等。等价于 [ fnrtv]。

S 匹配任何非空白字符。等价于 [^ fnrtv]。

t 匹配一个制表符。等价于 x09 和 cI。

v 匹配一个垂直制表符。等价于 x0b 和 cK。

特殊字符

所谓特殊字符,就是一些有特殊含义的字符,如上面说的".txt"中的,简单的说就是表示任何字符串的意思。如果要查找文件名中有*的文件,则需要对*进行转义,即在其前加一个。ls .txt。正则表达式有以下特殊字符。

特别字符 说明

$ 匹配输入字符串的结尾位置。如果设置了 RegExp 对象的 Multiline 属性,则 $ 也匹配 'n' 或 'r'。要匹配 $ 字符本身,请使用 $。

( ) 标记一个子表达式的开始和结束位置。子表达式可以获取供以后使用。要匹配这些字符,请使用 ( 和 )。

匹配前面的子表达式零次或多次。要匹配 字符,请使用 。

+ 匹配前面的子表达式一次或多次。要匹配 + 字符,请使用 +。

. 匹配除换行符 n之外的任何单字符。要匹配 .,请使用 。

[ 标记一个中括号表达式的开始。要匹配 [,请使用 [。

? 匹配前面的子表达式零次或一次,或指明一个非贪婪限定符。要匹配 ? 字符,请使用 ?。

将下一个字符标记为或特殊字符、或原义字符、或向后引用、或八进制转义符。例如, 'n' 匹配字符 'n'。'n' 匹配换行符。序列 '' 匹配 "",而 '(' 则匹配 "("。

^ 匹配输入字符串的开始位置,除非在方括号表达式中使用,此时它表示不接受该字符。要匹配 ^ 字符本身,请使用 ^。

{ 标记限定符表达式的开始。要匹配 {,请使用 {。

| 指明两项之间的一个选择。要匹配 |,请使用 |。

构造正则表达式的方法和创建数学表达式的方法一样。也就是用多种元字符与作符将小的表达式结合在一起来创建更大的表达式。正则表达式的组件可以是单个的字符、字符、字符范围、字符间的选择或者所有这些组件的任意组合。

限定符

限定符用来指定正则表达式的一个给定组件必须要出现多少次才能满足匹配。有或+或?或或或共6种。

、+和?限定符都是贪婪的,因为它们会尽可能多的匹配文字,只有在它们的后面加上一个?就可以实现非贪婪或小匹配。

正则表达式的限定符有:

字符 描述

匹配前面的子表达式零次或多次。例如,zo 能匹配 "z" 以及 "zoo"。 等价于。

+ 匹配前面的子表达式一次或多次。例如,'zo+' 能匹配 "zo" 以及 "zoo",但不能匹配 "z"。+ 等价于 。

? 匹配前面的子表达式零次或一次。例如,"do(es)?" 可以匹配 "do" 或 "does" 中的"do" 。? 等价于 。

n 是一个非负整数。匹配确定的 n 次。例如,'o' 不能匹配 "Bob" 中的 'o',但是能匹配 "food" 中的两个 o。

n 是一个非负整数。至少匹配n 次。例如,'o' 不能匹配 "Bob" 中的 'o',但能匹配 "foooood" 中的所有 o。'o' 等价于 'o+'。'o' 则等价于 'o'。

m 和 n 均为非负整数,其中n <= m。少匹配 n 次且多匹配 m 次。例如,"o" 将匹配 "fooooood" 中的前三个 o。'o' 等价于 'o?'。请注意在逗号和两个数之间不能有空格。

定位符

用来描述字符串或单词的边界,^和$分别指字符串的开始与结束,b描述单词的前或后边界,B表示非单词边界。不能对定位符使用限定符。

选择

用圆括号将所有选择项括起来,相邻的选择项之间用|分隔。但用圆括号会有一个副作用,是相关的匹配会被缓存,此时可用?:放在个选项前来消除这种副作用。

其中?:是非捕获元之一,还有两个非捕获元是?=和?!,这两个还有更多的含义,前者为正向预查,在任何开始匹配圆括号内的正则表达式模式的位置来匹配搜索字符串,后者为负向预查,在任何开始不匹配该正则表达式模式的位置来匹配搜索字符串。

后向引用

对一个正则表达式模式或部分模式两边添加圆括号将导致相关匹配存储到一个临时缓冲区中,所捕获的每个子匹配都按照在正则表达式模式中从左至右所遇到的内容存储。存储子匹配的缓冲区编号从 1 开始,连续编号直至 99 个子表达式。每个缓冲区都可以使用 'n' 访问,其中 n 为一个标识特定缓冲区的一位或两位十进制数。

可以使用非捕获元字符 '?:', '?=', or '?!' 来忽略对相关匹配的保存。

各种作符的运算优先级

相同优先级的从左到右进行运算,不同优先级的运算先高后低。各种作符的优先级从高到低如下:

作符 描述

转义符

(), (?:), (?=), [] 圆括号和方括号

, +, ?, , , 限定符

^, $, anymetacharacter 位置和顺序

| “或”作

全部符号解释

字符 描述

将下一个字符标记为一个特殊字符、或一个原义字符、或一个 向后引用、或一个八进制转义符。例如,'n' 匹配字符 "n"。'n' 匹配一个换行符。序列 '' 匹配 "" 而 "(" 则匹配 "("。

^ 匹配输入字符串的开始位置。如果设置了 RegExp 对象的 Multiline 属性,^ 也匹配 'n' 或 'r' 之后的位置。

$ 匹配输入字符串的结束位置。如果设置了RegExp 对象的 Multiline 属性,$ 也匹配 'n' 或 'r' 之前的位置。

匹配前面的子表达式零次或多次。例如,zo 能匹配 "z" 以及 "zoo"。 等价于。

+ 匹配前面的子表达式一次或多次。例如,'zo+' 能匹配 "zo" 以及 "zoo",但不能匹配 "z"。+ 等价于 。

? 匹配前面的子表达式零次或一次。例如,"do(es)?" 可以匹配 "do" 或 "does" 中的"do" 。? 等价于 。

n 是一个非负整数。匹配确定的 n 次。例如,'o' 不能匹配 "Bob" 中的 'o',但是能匹配 "food" 中的两个 o。

n 是一个非负整数。至少匹配n 次。例如,'o' 不能匹配 "Bob" 中的 'o',但能匹配 "foooood" 中的所有 o。'o' 等价于 'o+'。'o' 则等价于 'o'。

m 和 n 均为非负整数,其中n <= m。少匹配 n 次且多匹配 m 次。例如,"o" 将匹配 "fooooood" 中的前三个 o。'o' 等价于 'o?'。请注意在逗号和两个数之间不能有空格。

? 当该字符紧跟在任何一个其他限制符 (, +, ?, , , ) 后面时,匹配模式是非贪婪的。非贪婪模式尽可能少的匹配所搜索的字符串,而默认的贪婪模式则尽可能多的匹配所搜索的字符串。例如,对于字符串 "oooo",'o+?' 将匹配单个 "o",而 'o+' 将匹配所有 'o'。

. 匹配除 "n" 之外的任何单个字符。要匹配包括 'n' 在内的任何字符,请使用象 '[.n]' 的模式。

(pattern) 匹配 pattern 并获取这一匹配。所获取的匹配可以从产生的 Matches 得到,在VBScript 中使用 SubMatches ,在JScript 中则使用 $0…$9 属性。要匹配圆括号字符,请使用 '(' 或 ')'。

(?:pattern) 匹配 pattern 但不获取匹配结果,也就是说这是一个非获取匹配,不进行存储供以后使用。这在使用 "或" 字符 (|) 来组合一个模式的各个部分是很有用。例如, 'industr(?:y|ies) 就是一个比 'industry|industries' 更简略的表达式。

(?=pattern) 正向预查,在任何匹配 pattern 的字符串开始处匹配查找字符串。这是一个非获取匹配,也就是说,该匹配不需要获取供以后使用。例如,'Windows (?=95|98|NT|2000)' 能匹配 "Windows 2000" 中的 "Windows" ,但不能匹配 "Windows 3.1" 中的 "Windows"。预查不消耗字符,也就是说,在一个匹配发生后,在一次匹配之后立即开始下一次匹配的搜索,而不是从包含预查的字符之后开始。

(?!pattern) 负向预查,在任何不匹配 pattern 的字符串开始处匹配查找字符串。这是一个非获取匹配,也就是说,该匹配不需要获取供以后使用。例如'Windows (?!95|98|NT|2000)' 能匹配 "Windows 3.1" 中的 "Windows",但不能匹配 "Windows 2000" 中的 "Windows"。预查不消耗字符,也就是说,在一个匹配发生后,在一次匹配之后立即开始下一次匹配的搜索,而不是从包含预查的字符之后开始

x|y 匹配 x 或 y。例如,'z|food' 能匹配 "z" 或 "food"。'(z|f)ood' 则匹配 "zood" 或 "food"。

[xyz] 字符。匹配所包含的任意一个字符。例如, '[abc]' 可以匹配 "plain" 中的 'a'。

[^xyz] 负值字符。匹配未包含的任意字符。例如, '[^abc]' 可以匹配 "plain" 中的'p'。

[a-z] 字符范围。匹配指定范围内的任意字符。例如,'[a-z]' 可以匹配 'a' 到 'z' 范围内的任意小写字母字符。

[^a-z] 负值字符范围。匹配任何不在指定范围内的任意字符。例如,'[^a-z]' 可以匹配任何不在 'a' 到 'z' 范围内的任意字符。

b 匹配一个单词边界,也就是指单词和空格间的位置。例如, 'erb' 可以匹配"nr" 中的 'er',但不能匹配 "verb" 中的 'er'。

B 匹配非单词边界。'erB' 能匹配 "verb" 中的 'er',但不能匹配 "nr" 中的 'er'。

cx 匹配由 x 指明的控制字符。例如, cM 匹配一个 Control-M 或回车符。x 的值必须为 A-Z 或 a-z 之一。否则,将 c 视为一个原义的 'c' 字符。

d 匹配一个数字字符。等价于 [0-9]。

D 匹配一个非数字字符。等价于 [^0-9]。

f 匹配一个换页符。等价于 x0c 和 cL。

n 匹配一个换行符。等价于 x0a 和 cJ。

r 匹配一个回车符。等价于 x0d 和 cM。

s 匹配任何空白字符,包括空格、制表符、换页符等等。等价于 [ fnrtv]。

S 匹配任何非空白字符。等价于 [^ fnrtv]。

t 匹配一个制表符。等价于 x09 和 cI。

v 匹配一个垂直制表符。等价于 x0b 和 cK。

w 匹配包括下划线的任何单词字符。等价于'[A-Za-z0-9_]'。

W 匹配任何非单词字符。等价于 '[^A-Za-z0-9_]'。

xn 匹配 n,其中 n 为十六进制转义值。十六进制转义值必须为确定的两个数字长。例如,'x41' 匹配 "A"。'x041' 则等价于 'x04' & "1"。正则表达式中可以使用 ASCII 编码。.

num 匹配 num,其中 num 是一个正整数。对所获取的匹配的引用。例如,'(.)1' 匹配两个连续的相同字符。

n 标识一个八进制转义值或一个向后引用。如果 n 之前至少 n 个获取的子表达式,则 n 为向后引用。否则,如果 n 为八进制数字 (0-7),则 n 为一个八进制转义值。

nm 标识一个八进制转义值或一个向后引用。如果 nm 之前至少有 nm 个获得子表达式,则 nm 为向后引用。如果 nm 之前至少有 n 个获取,则 n 为一个后跟文字 m 的向后引用。如果前面的条件都不满足,若 n 和 m 均为八进制数字 (0-7),则 nm 将匹配八进制转义值 nm。

nml 如果 n 为八进制数字 (0-3),且 m 和 l 均为八进制数字 (0-7),则匹配八进制转义值 nml。

un 匹配 n,其中 n 是一个用四个十六进制数字表示的 Unicode 字符。例如, u00A9 匹配版权符号 (?)。

VBScript内的使用方法:

function gfCheck(obj)

dim strCheck '待检字符串

dim objRE '正则式对象

dim strRtn '正则式判断结果

strCheck = obj.value

set objRE = New RegExp

objRE.Pattern = "^[A-Za-z0-9]$" '13位的英文字符和数字串

gfCheck = objRE.Test(strCheck) '符合正则式则返回true,反之则返回false

set objRE = nothing

end function

常用的正则式

1、非负整数:”^d+$”

2、正整数:”^[0-9][1-9][0-9]$”

3、非正整数:”^((-d+)|(0+))$”

4、负整数:”^-[0-9][1-9][0-9]$”

5、整数:”^-?d+$”

6、非负浮点数:”^d+(.d+)?$”

7、正浮点数:”^((0-9)+.[0-9][1-9][0-9])|([0-9][1-9][0-9].[0-9]+)|([0-9][1-9][0-9]))$”

8、非正浮点数:”^((-d+.d+)?)|(0+(.0+)?))$”

9、负浮点数:”^(-((正浮点数正则式)))$”

10、英文字符串:”^[A-Za-z]+$”

11、英文大写串:”^[A-Z]+$”

12、英文小写串:”^[a-z]+$”

13、英文字符数字串:”^[A-Za-z0-9]+$”

14、英数字加下划线串:”^w+$”

15、E-mail地址:”^[w-]+(.[w-]+)@[w-]+(.[w-]+)+$”

16、URL:”^[a-zA-Z]+://(w+(-w+))(.(w+(-w+)))(?s)?$”

进入后台→系统→SQL命令行工具→运行SQL命令行: 单行命令执行查询命令:

1.将所有文档设置为“仅动态”:update dede_archives set iake=-1

2.将所有文档设置为“仅静态”:update dede_archives set iake=1

3.将所有栏目设置为“使用动态页”: update dede_arctype set isdefault=-1

4.将所有栏目设置为“使用静态页”: update dede_arctype set isdefault=1