導航:首頁 > 編程語言 > php正則全形

php正則全形

發布時間:2022-10-28 19:48:00

php 如何取出一段字元串里的全形符號 詳細如下

取出一段字元串里的全形符號.幹嘛?

可以過濾之前取得啊,然後在處理嘛
說詳細點兒。

⑵ 有關php 正則表達式替換的問題

$str = "哈哈@abc,@中國,@中國china,另一個哈哈@結尾沒有逗號的";
$pattern = "/(@([^,,]+))([,,]?)|(@(.+))$/i"; //匹配以全形逗號或者半形逗號或者是串尾的
$replacement = '<a href="/id/$2">$1</a>$3';
$str = preg_replace($pattern, $replacement, $str);
echo $str;

⑶ PHP里要將一段數據里中文間的逗號換成全形的,應該如何做

function 一個方法。

例如
$str 要轉換的字元串
function phpstrtr ($str){

$tr=array(
','=>',');

return strtr($str, $tr);
}

⑷ PHP中字元串正則式處理:去除字元串末尾的若干個空格

查找:[\u0026-\u002f\u003a\u003b]
替換為空
原理:&的ascii為0x26,其至0x2f之間都是符號,0x30~0x39是數字0~9,0x3a和0x3b是符號,分號是0x3b,所以,你描述的符號就是兩個連續區間,後一個區間只有兩個字元,總體上也可表示為一個連續字元區間和兩個散點字元,如上即是。

⑸ 請問 php 正則中的這些是什麼編碼呢

一:[\x81-\xfe]格式的正則:

$s=preg_replace('/^([\x81-\xfe][\x40-\xfe])*/','0',$neirong); 這裡面的大多是日韓文字

二:x{4e00}格式的正則:

preg_match("/^[\x{4e00}-\x{9fa5}]{1,4}/u",$str); 這裡面是匹配中文;

——————————————————————————
這些字元集尤其是日文字元集的各種字、標點以及特殊符號的時候有所幫助。
UTF8
[\x01-\x7f]|[\xc0-\xdf][\x80-\xbf]|[\xe0-\xef][\x80-\xbf]{2}|[\xf0-\xff][\x80-\xbf]{3}
UTF16
[\x00-\xd7][\xe0-\xff]|[\xd8-\xdf][\x00-\xff]{2}
JIS
[\x20-\x7e]|[\x21-\x5f]|[\x21-\x7e]{2}
SJIS
[\x20-\x7e]|[\xa1-\xdf]|([\x81-\x9f]|[\xe0-\xef])([\x40-\x7e]|[\x80-\xfc])
EUC_JP
[\x20-\x7e]|\x81[\xa1-\xdf]|[\xa1-\xfe][\xa1-\xfe]|\x8f[\xa1-\xfe]{2}
EUC_JP標點符號及特殊字元
[\xa1-\xa2][\xa0-\xfe]
EUC_JP全形數字
\xa3[\xb0-\xb9]
EUC_JP全形大寫英文
\xa3[\xc1-\xda]
EUC_JP全形小寫英文
\xa3[\xe1-\xfa]
EUC_JP全形平假名
\xa4[\xa1-\xf3]
EUC_JP全形片假名 [color=Red]2007-03-12 15:00更新[/color]
\xa3[\xb0-\xb9]|\xa3[\xc1-\xda]|\xa5[\xa1-\xf6][\xa3][\xb0-\xfa]|[\xa1][\xbc-\xbe]|[\xa1][\xdd]
EUC_JP全形漢字 [color=Red]2007-03-12 15:06更新[/color]
[\xb0-\xcf][\xa0-\xd3]|[\xd0-\xf4][\xa0-\xfe]|[\xB0-\xF3][\xA1-\xFE]|[\xF4][\xA1-\xA6]|[\xA4][\xA1-\xF3]|[\xA5][\xA1-\xF6]|[\xA1][\xBC-\xBE]
Big5
[\x01-\x7f]|[\x81-\xfe]([\x40-\x7e]|[\xa1-\xfe])
GBK
[\x01-\x7f]|[\x81-\xfe][\x40-\xfe]
GB2312漢字
[\xb0-\xf7][\xa0-\xfe]
GB2312半形標點符號及特殊符號
\xa1[\xa2-\xfe]
GB2312羅馬數組及項目序號
\xa2([\xa1-\xaa]|[\xb1-\xbf]|[\xc0-\xdf]|[\xe0-\xe2]|[\xe5-\xee]|[\xf1-\xfc])
GB2312全形標點及全形字母
\xa3[\xa1-\xfe]
GB2312日文平假名
\xa4[\xa1-\xf3]
GB2312日文片假名
\xa5[\xa1-\xf6]
補充:
GB18030
[\x00-\x7f]|[\x81-\xfe][\x40-\xfe]|[\x81-\xfe][\x30-\x39][\x81-\xfe][\x30-\x39]
[color=Red]2007-03-12 21:35 補充[/color]
日文半形空格
\x20
SJIS全形空格
(?:\x81\x81)
SJIS全形數字
(?:\x82[\x4f-\x58])
SJIS全形大寫英文
(?:\x82[\x60-\x79])
SJIS全形小寫英文
(?:\x82[\x81-\x9a])
SJIS全形平假名
(?:\x82[\x9f-\xf1])
SJIS全形平假名擴展
(?:\x82[\x9f-\xf1]|\x81[\x4a\x4b\x54\x55])
SJIS全形片假名
(?:\x83[\x40-\x96])
SJIS全形片假名擴展
(?:\x83[\x40-\x96]|\x81[\x45\x5b\x52\x53])
EUC_JP全形空格
(?:\xa1\xa1)
EUC半形片假名
(?:\x8e[\xa6-\xdf])

——————————————————————————

下面是utf-8編碼的例子:
$str = "漢字";
if (preg_match("/^[\x{4e00}-\x{9fa5}]+$/u",$str)) {
print("該字元串全部是中文");
} else {
print("該字元串不全部是中文");
}

下面的例子包含gbk,gb2312的例子:

<?php
$action = trim($_GET['action']);
if($action == "sub")
{
$str = $_POST['dir'];
//if(!preg_match("/^[".chr(0xa1)."-".chr(0xff)."A-Za-z0-9_]+$/",$str)) //GB2312漢字字母數字下劃線正則表達式
if(!preg_match("/^[\x{4e00}-\x{9fa5}A-Za-z0-9_]+$/u",$str)) //UTF-8漢字字母數字下劃線正則表達式
{
echo "<font color=red>您輸入的[".$str."]含有違法字元</font>";
}
else
{
echo "<font color=green>您輸入的[".$str."]完全合法,通過!</font>";
}
}
?>

⑹ php如何判斷是字元串全形還是半形

第一步:新建程序
使用Dreamweaver或記事本新建一個PHP程序,這是所有開發必須經過的開始,然後輸入測試段代碼(Hello World!),並運行。

第二步:輸入英文分號並運行
為了便於後面的比較,在編輯器新增一個<div>標簽並做對齊,輸入文字:我是英文PHP的分號(;),並在瀏覽器中運行

第三步:對比輸入中文分號再運行
接著輸入一段文字,我是中文PHP的分號(;),在瀏覽器中運行,並作比較,中文分號比英文分號更大更寬

第四步:輸入英文半形並運行
在編輯器中新增一個<div>標簽,輸入文字:我是PHP的半形寫法:php,並運行,並記錄

第五步:全半形及中英文切換
很多非專業的人不會切換全半形,切換全半形方式為Shift+Space鍵盤,也可以點擊輸入法切換

第六步:輸入英文全形再運行
同理,在編輯器中輸入文字:我是PHP全形寫法:php,並運行,比較全半形的區別(註:全形只在英文小寫字母才有作用),全形字元寬度明顯大於半形。

第七步:對比全形和半形
全形字元佔位大於半形。

第八步:對比中文和英文
英文符號再大小以及佔位寬度比中文符號小

⑺ 正則表達式如何匹配全形數字並替換

[\uFF10-\uFF19]
這個能匹配全形0~9的數字
對應的
你如果要替換
估計要0-9一個個來
或者自己寫邏輯循環
\uFF10對應全形1 單個個正則 [\uFF10]
\uFF11對應全形2 單個個正則 [\uFF11]
...
\uFF19
以此類推
其實不管80還是09還是008 009
你只要匹配到的單個數字都轉成半形自然什麼都解決了

方法告訴你了
其他的自己去完成吧

⑻ 求PHP正則表達式,匹配[所有標點符號|數字|大小寫字母|其他在書名上應該橫過來的字元]

你的意思是只要漢字嗎? 你說的也不是很清楚 猜猜應該是只要漢字吧

preg_match("/^[\u4e00-\u9fa5]+$/",$str)) //utf8編碼

⑼ php 正則替換 全、半形空格和全形逗號替換為半形逗號

/,|\s/ig 這個是正則,正則只是做查找功能而已,沒替換,你替換要用你自己的語言替換。例如:你的是java,str.replaceAll(",|\\s",",");

⑽ PHP中,一串UTF8中文字元,要將其中的全形問號替換為空,正則表達式應該怎麼寫

這種簡單的替換用不著正則表達式,可以用字元串替換函數
str_replace('?','',$str);

閱讀全文

與php正則全形相關的資料

熱點內容
程序員求助國企 瀏覽:837
雲伺服器網址租用多少錢 瀏覽:942
行車記錄儀安卓版怎麼用 瀏覽:500
java是不是數字 瀏覽:182
php模擬瀏覽器環境 瀏覽:353
編程誰都能學會嗎 瀏覽:407
使用國家反詐app都要開啟什麼 瀏覽:712
下載民宿APP有什麼用 瀏覽:52
續子語pdf 瀏覽:385
2021年加密貨幣最新行情 瀏覽:162
nfs怎麼加密ipsec 瀏覽:245
國二考試調用編譯器運算選擇題 瀏覽:750
同濟大學高等數學pdf 瀏覽:234
延時的宏命令怎麼設置 瀏覽:596
資料庫有哪些加密 瀏覽:209
改之理反編譯注冊教程 瀏覽:391
什麼是編譯程序和翻譯程序 瀏覽:208
python課程心得總結 瀏覽:17
派派中怎麼看對方在哪個伺服器 瀏覽:796
xp配置java環境變數配置 瀏覽:9