導航:首頁 > 凈水問答 > c過濾全形字元

c過濾全形字元

發布時間:2021-03-22 22:51:55

⑴ c++中如何判斷字元是全形還是半形

其他字元半形(33-126)與全形(65281-65374)的對應關系是:均相差65248
if(
ch&128)
用這個可以判斷

⑵ 求正則表達式,要求:匹配所有的半形數字和英文字元,替換成全形數字和全形英文字元,先謝謝了

正則表達式並不是處理此問題的最佳途徑。
下面是一段根據utf編碼表轉換的示例代碼:
public static String convertSBC2DBC(String s)
{
if(s==null||s.length()==0) return s;
StringBuilder sb=new StringBuilder(s);
final int offset=0xff00-0x20;
for(int i=0;i<sb.length();i++)
{
char val=sb.charAt(i);
if(val==0x3000) {
val=0x20;
continue;
}
if(isSBC(val)){
val-=offset;
sb.setCharAt(i, val);
}
}
return sb.toString();
}

public static boolean isSBC(char ch)
{
if(ch==0x3000) return true;//特殊處理空格
return ch>0xff00&&ch<0xff5f;
}
public static void main(String[] args) {
System.out.println(convertSBC2DBC("Abcdefgh129847"));
}

⑶ C語言編程中分好還有雙引號之類的是全形字元還是半形的啊

所有的都是半形字元,也就是一般用英文輸入時使用的。
全形字元一般都是中文才用的,老外完全搞不懂的。

⑷ shell或標准C/C++處理繁體字、全形等字元

撒的

⑸ 怎樣將字元串中的全形和半形字元區分出來

char c = 'a';
if(c>=33 & c<=126)
{
半形
}
else if(c>=65281& c<=65374)
{
全形
}
else
{
其它
}

⑹ C++如何實現給字元串中的指定元素賦值全形字元

直接使用getline函數進行獲取字元串,設置結束標識為'\n'即可

string a;getline(cin, a, '\n');cout << a;

⑺ 求教:HttpServlet過濾全形字元

取每行數據,用indexOf() 方法判斷字元串是否 Define Class開頭,然後以空格符作為分隔符把字元串用 split()方法分割成數組, 返回一個串數組,那下標為2的數組就是你要的東西

⑻ C語言求解 關於全形符號與半形符號的篩選 以及二進制打開文本

統計字元、那個你用ASCLL碼的段位做、就是一個簡單的if語句
if(……)//判斷是否在那個ASCLL碼段位
{
count1++;
printf("……");//輸出
}
類似的兩個if放在循環內就解決了

⑼ 計算機怎樣識別半形和全形字元混雜的字元串

編碼不同

比如,在相同編碼下,on的是006f 006e , 而潮應該是 6f6e

在不支持漢字的編碼下,是讀不出來漢字的,如ASCII編碼無法表示漢字。所以ASCII不需要區分這個。

⑽ 急求!!!用C語言編程,統計一個文本文件中半形字元的個數和全形字元的個數。 萬分感謝!!!

#include<stdio.h>
#include<string.h>
void main()
{
unsigned char half[256]={0},all[256][3]={0},c; /* 不考慮中文 */
char str[500];
int halfdata[256]={0},alldata[256]={0};
int i,len;
FILE *fp;

if((fp=fopen("test.txt","rt"))==NULL)
{
printf("cannot open file\n");
return;
}
while (fgets(str,500,fp))
{
len=strlen(str);
for(i=0;i<len-1;i++)
{
if((str[i]&0x80)==0)
{
half[str[i]]=str[i];
halfdata[str[i]]++;
}
else if((str[i+1]&0x80)>0)
{
c=str[i+1];
all[c][0]=str[i]; /* 全形字元的第一個位元組總是被置為163 */
all[c][1]=str[i+1];
alldata[c]++; /* 根據第二個位元組進行區分 */
i++;
}
}
}
fclose(fp);
for(i=0;i<256;i++)
{
if(halfdata[i]>0)
printf("%d %c\n",halfdata[i],half[i]);
if(alldata[i]>0)
printf("%d %s\n",alldata[i],all[i]);
}
}

閱讀全文

與c過濾全形字元相關的資料

熱點內容
EDI有哪些內容 瀏覽:870
內嵌式飲水機怎麼配合全屋凈水 瀏覽:711
荊馬河污水處怎麼樣 瀏覽:898
提升泵和加葯泵一起啟動 瀏覽:928
純水井水沒水壓怎麼裝 瀏覽:186
銀川市城市污水處理廠 瀏覽:52
生活污水是否可以直排河流 瀏覽:677
呋喃樹脂怎麼生產 瀏覽:198
ro膜可以反向沖洗么 瀏覽:140
老馬6汽油濾芯怎麼拆 瀏覽:928
圖片如何過濾變清晰 瀏覽:717
污水能不能跨省轉移 瀏覽:101
凈化器清洗指示燈閃爍怎麼解決 瀏覽:812
生活污水每人按照多少噸 瀏覽:309
軒逸用什麼牌子空氣濾芯好 瀏覽:437
診療機構污水處理 瀏覽:188
哪吒upro空調濾芯怎麼復位 瀏覽:273
創新凈化器什麼價格 瀏覽:758
一個人一天喝多少純凈水最合適 瀏覽:701
156非球面加膜樹脂鏡片 瀏覽:455