Perl語言的文字處理模式之3(3)
發(fā)表時(shí)間:2024-06-12 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]指令:s取代函數(shù) 語法:s/PATTERN/REPLACE/eg 其中PATTERN是文字處理(Regular Expression)的模式,REPLACE是代表取代成何種文 字 模式。而g是這個(gè)函數(shù)最常用的參數(shù),代表要把所有符合文字模式的字符串 全部取 代,如果省略這個(gè)參數(shù)的話,則只取代一個(gè)...
指令:s取代函數(shù)
語法:s/PATTERN/REPLACE/eg
其中PATTERN是文字處理(Regular Expression)的模式,REPLACE是代表取代成何種文
字 模式。而g是這個(gè)函數(shù)最常用的參數(shù),代表要把所有符合文字模式的字符串 全部取
代,如果省略這個(gè)參數(shù)的話,則只取代一個(gè)符合文字模式的字符串;而加上e這 個(gè)參數(shù)是代
表要將REPLACE的部分當(dāng)成一個(gè)運(yùn)算式,如果沒有這個(gè)需要的話,就不用加 上這個(gè)參數(shù)。
說明:將符合文字處理模式的字符串取代成為要取代的字符串。
范例一:
$string="i;love;perl";
$string=~s/:/*/: #此時(shí)$string="i*love:perl";
$string=~s/:/*/g; #此時(shí)$string="i*love*perl";
$stiing=~s/*/+/g; #此時(shí)$string="i+love+perl";
$string=~s/+//g: #此時(shí)$string="i love perl";
上一行也可寫成$string=~tr/+//;效果都會(huì)一樣哦!
$string=~s/per1/cgi/; #此時(shí)$string="i love cgi";
范例二:
$string="i love per";
$string=~s/(love)/<$1>/;
第一個(gè)()內(nèi)所找到的字符串變成$1,在這個(gè)范例中,會(huì)把變量love這個(gè)字符串變成
<>,此時(shí)$string="i<>perl";
$string="i love per1";
$string=~s/(i)(perl)/<$1><$2>/;
在這個(gè)范例中,會(huì)把i變成<>,perl變成<>此時(shí)$string="<>love<>";
$striag="i love per1";
$string=~s/(w+)/<$1>/g;
(w+)代表找尋符合一個(gè)或是多個(gè)英文字符或是數(shù)值的字符串,之后再將找到的字 符串設(shè)成$l。因?yàn)榧由蟝這個(gè)參數(shù),所以會(huì)找到字符串中的這三個(gè)英文單字, 然后 再把這三個(gè)單字分別加上<>這個(gè)符號,此時(shí)$string="<><><>";