通配符是一种特殊语句,主要有星号(*)和问号(?),用来模糊搜索文件。当查找文件夹时,可以使用它来代替一个或多个真正字符;当不知道真正字符或者懒得输入完整名字时,常常使用通配符代替一个或多个真正的字符。 实际上用“*Not?pad”可以对应NotepadMyNotepad【*可以代表任何字符串;?仅代表单个字符串,但此单字必须存在】;Notepd可以对应NotepadNotepod【ao代表a与o里二选一】,其余以此类推。
通配符是竞价排名广告的一项高级功能,当我们在广告创意中使用了这项功能之后,使用不同搜索字词的用户将看到不同的广告创意(虽然我们只制作了一个广告)。这将大大提高我们广告的相关性和实用性,从而提高广告的点击率,同时也大大提高了我们的工作效率。
通配符是一类键盘字符。
当查找文件夹时;当不知道真正字符或者不想键入完整名字时,常常使用通配符代替一个或多个真正字符。
星号(*)
可以使用星号代替零个、单个或多个字符。如果正在查找以AEW开头的一个文件,但不记得文件名其余部分,可以输入AEW*,查找以AEW开头的所有文件类型的文件,如AEWT.txt、AEWU.EXE、AEWI.dll等。要缩小范围可以输入AEW*.txt,查找以AEW开头的所有文件类型并.txt为扩展名的文件如AEWIP.txt、AEWDF.txt。
问号(?)
可以使用问号代替一个字符。如果输入love?,查找以love开头的一个字符结尾文件类型的文件,如lovey、lovei等。要缩小范围可以输入love?.doc,查找以love开头的一个字符结尾文件类型并.doc为扩展名的文件如lovey.doc、loveh.doc。
通配符包括星号“*”和问号“?”
星号表示匹配的数量不受限制,而后者的匹配字符数则受到限制。这个技巧主要用于英文搜索中,如输入““computer*”,就可以找到“computer、computers、computerised、computerized”等单词,而输入“comp?ter”,则只能找到“computer、compater、competer”等单词。
通配符优先级
对于使用通配符模式的各种资源,Tivoli Access Manager for Operating Systems 必须确定将应用何种通配符模式。例如,假设有两种模式:
/usr/localerror
4 log/+/error.1
5 logerror.1
7 log*/error
8 log*/error* *
9 log*
10 * *
当两个模式之间的唯一差别是字符集合中指定的字符时,将通过逐字比较包含模式的两个字符串来确定优先级。仅在要匹配的字符集包含一些相同字符时才必须考虑这一点。如果在两个集合中没有公共字符,则任一给定的字符串最多只能匹配这两个模式中的一个。
路由配置中的通配符
在路由器的配置中,经常出现通配符。和子网掩码一样,都是以“0”或“1”表示,不过与子网掩码所表示的意思却不一样。
子网掩码所表示的是IP的网络位和主机位,而通配符则表示与IP是否匹配。
通配符同样是32位,和IP地址一一对应,“0”位代表精确匹配,而“1“位代表不许匹配。例如路由器EIGRP的配置中:
RouterA(config)#router eigrp 100
RouterA(config-router)#network 10.0.0.0 0.0.0.255
RouterA(config-router)#network 192.168.1.0 0.0.0.255
10.0.0.0 0.0.0.255说明只要接口的IP地址是以“10”开头就参与EIGRP进程。同理的,192.168.1.0 0.0.0.255说明只要IP是以192.168.1开头的IP就符合。
SQL 通配符
在搜索数据库中的数据时,SQL通配符可以替代一个或多个字符。
SQL通配符必须与LIKE运算符一起使用。
在SQL中,可使用以下通配符:
通配符 | 描述 |
|---|---|
% | 替代零个或多个字符 |
_ | 仅替代一个字符 |
字符列中的任何单一字符 | |
或者 | 不在字符列中的任何单一字符 |
原始的表
(用在例子中的):
Persons表:
Id | LastName | FirstName | Address | City |
|---|---|---|---|---|
1 | Adams | John | Oxford Street | London |
2 | Bush | George | Fifth Avenue | New York |
3 | Carter | Thomas | Changan Street | Beijing |
使用 % 通配符
例子 1
我们希望从上面的“Persons”表中选取居住在以“Ne”开始的城市里的人:
我们可以使用下面的 SELECT 语句:
SELECT * FROM PersonsWHERE City LIKE ’Ne%’结果集:
Id | LastName | FirstName | Address | City |
|---|---|---|---|---|
2 | Bush | George | Fifth Avenue | New York |
例子 2
接下来,我们希望从“Persons”表中选取居住在包含“lond”的城市里的人:
我们可以使用下面的SELECT语句:
SELECT * FROM PersonsWHERE City LIKE ’%lond%’结果集:
Id | LastName | FirstName | Address | City |
|---|---|---|---|---|
1 | Adams | John | Oxford Street | London |
使用 _ 通配符
例子 1
我们希望从上面的“Persons”表中选取名字的第一个字符之后是“eorge”的人:
我们可以使用下面的SELECT语句:
SELECT * FROM PersonsWHERE FirstName LIKE ’_eorge’结果集:
Id | LastName | FirstName | Address | City |
|---|---|---|---|---|
2 | Bush | George | Fifth Avenue | New York |
例子 2
接下来,我们希望从“Persons”表中选取的这条记录的姓氏以“C”开头,然后是一个任意字符,然后是“r",然后是任意字符,然后是“er":
我们可以使用下面的SELECT语句:
SELECT * FROM PersonsWHERE LastName LIKE ’C_r_er’结果集:
Id | LastName | FirstName | Address | City |
|---|---|---|---|---|
3 | Carter | Thomas | Changan Street | Beijing |
使用 通配符
例子 1
我们希望从上面的“Persons”表中选取居住的城市以“A”或“L”或“N”开头的人:
我们可以使用下面的SELECT语句:
SELECT * FROM PersonsWHERE City LIKE ’%’结果集:
Id | LastName | FirstName | Address | City |
|---|---|---|---|---|
1 | Adams | John | Oxford Street | London |
2 | Bush | George | Fifth Avenue | New York |
例子 2
我们希望从上面的“Persons”表中选取居住的城市不以“A”或“L”或“N”开头的人:
我们可以使用下面的SELECT语句:
SELECT * FROM PersonsWHERE City LIKE ’%’结果集:
Id | LastName | FirstName | Address | City |
|---|---|---|---|---|
3 | Carter | Thomas | Changan Street | Beijing |