我有任何字符的輸入,我需要有一個數組分隔輸入中的單詞。該數組需要只有字母(西班牙文,所以它包括重音字母)。我的代碼做到了,它只是無法識別特殊的西班牙文字符,如「¡」,「¿」等。比較字符與西班牙字符
我該如何設法糾正這個問題?...這是我的代碼。
string x[100];
int n = 0;
while (entrada){
entrada>>x[n];
n++;
}
n--;
for(int j = 0;j<n;j++){
cout<<x[j]<<"/";
}
string y[100];
for(int i = 0;i<n;i++)
for(int j = 0; j<x[i].length();j++){
if(!ispunct(x[i][j]))
y[i]+=x[i][j];
}
與此代碼我得到這個輸入和輸出:
input
=======
Hola,
Cómo estás?
Espero que muy bien. ¡!!!
El otro día que fui al cine me acordé de la
película que vimos el año pasado.
output
========
Hola/Cómo/estás/Espero/que/muy/bien/¡/El/otro/día/que/fui/al/cine/me/acordé/de/la/película/que/vimos/el/año/pasado/
輸出是剛剛打印分離的陣列由一個「/」
Intenta crear un arreglo de caracteres con los signosválidos,incluidas letras acentuadas,minúsculasymayúsculas,asíhaces un ciclo doble,el cual compare que exista el caracter en el arreglo,de no serasí,puedes validar que no es correcto 。 – 2013-02-19 00:34:54
嘗試創建一個有效字符數組,並使用double,可以將每個元素與有效數組進行比較,並驗證它的正確與否。 – 2013-02-19 00:36:02