空格判断怎么不行?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了空格判断怎么不行?相关的知识,希望对你有一定的参考价值。
用ifstream提取文件内容利用char类型来,用向量一个一个字符的判断,判断到空格时怎么不行了。其他的标点符号都可以。新手请多多帮忙呀!
#include "stdafx.h"
#include <string>
#include <iostream>
#include <vector>
#include <algorithm>
#include <fstream>
#include <map>
using namespace std;
const long MAX_CAPTIONS = 10000; //置向量大小10000
const int MAX_LEN = 128; //定义数组长度
int _tmain(int argc, _TCHAR* argv[])
vector<char> vecSrc;
vector<char>::iterator frontPos;
vector<char>::iterator backPos;
map<char, int> wordnum;
ifstream readfile("read.txt", ios::binary|ios::in);
copy(istream_iterator<char>(readfile), istream_iterator<char>(), back_inserter(vecSrc));
vecSrc.resize(MAX_CAPTIONS);
char word[MAX_LEN]= 0 ;
backPos = vecSrc.begin();
cout<< *backPos;
for (frontPos = vecSrc.begin(); frontPos != vecSrc.end(); ++frontPos)
if (((*frontPos) == 64) || ((*frontPos) == ',') || ((*frontPos) == '.') ||((*frontPos) == '!')
|| ((*frontPos) == '\"') || ((*frontPos) == '-'))
for (int i=0; backPos != frontPos; ++backPos, ++i)
word[i] = *backPos;
++frontPos;
backPos = frontPos;
cout << word << " ";
memset(word, 0, MAX_LEN);
getchar();
return 0;
lz你搞错ascii码了。
判断是不是为全角或半角空格求解答
参考技术A alert('都是半角空格');return;判断输入文本是否都是全角空格JS
var partens=/[\u3000]/g; //全角正则
if(partens.test(str.value))
alert('都是全角空格');return;
还可以把上述两种类型组合起来运用.
str.value.replace(/[\u3000]/g,"") 然后再判断如:if(parten.test(str.value.replace(/[\u3000]/g,"")))
alert('不能为空格')return;补充一下网上还有其他的方法这样写道:
全角空格的unicode是12288,java中字符串类String的trim函数在此不起作用,因此需要先将全角空格改为半角空格.
假设字符串是str,先通过如下函数:
str = str.replace((char) 12288,' ');
将所有的全角空格进行转化,然后再使用trim函数,问题解决!
替换字符串前后半角空格:
以上是关于空格判断怎么不行?的主要内容,如果未能解决你的问题,请参考以下文章