将字符串中的html转义字符转换为字符

背景:

解析web的源文件时,发现文本节点的text中有转义字符,比如 Oil & Gas test,其中&对应的字符为&。

那么为了获得正确的text,所以就需要对该text中的转义字符进行转换。

以下代码以转换&为例,仅供参考。


code:

#include <iostream>
#include <string>
#include <iterator>
using namespace std;

//将字符串中的&转换为&
//可以将此方法扩展到所有的转义字符。。。

void main()
{
	string str = "Oil & Gas test";//转义字符&的实际表达是&
	cout << "str转换之前为:" << str << endl;
	//string strAfter = ReplaceStr(str);
	string::iterator it = str.begin();
	string::iterator end = str.end();
	string::iterator it_temp = it;
	string::iterator end_temp = it;
	for (; it != end; ++it)
	{
		if ((*it) == '&')
		{
			it_temp = it;
			end_temp = it.operator+=(4);
			if (*(end_temp) == ';')
			{
				end_temp = it.operator+=(1);
				str.replace(it_temp, end_temp, 1, '&');
				break;
			}
		}
	}
	cout << "str转换之后为:" << str << endl;
	system("pause");
}

result:




阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/shaojunbo24/article/details/46799927
文章标签: string iterator html
个人分类: C++
上一篇C++获取文件夹下的所有文件的名字
下一篇C++生成和使用库文件
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭