正则表达式 - 私有子标签RFC5646

时间:2016-01-20 22:22:42

标签: regex qt qregexp

有人可以帮我用正则表达式从RFC5646中提取子标签吗?

示例字符串

en-us-x-test-test1 = test,test1
en-gb-x-test-test2 = test,test2
fr-x-test-test3 = test,test3

我正在使用QRegExp

感谢您的帮助

1 个答案:

答案 0 :(得分:1)

你不需要这里的正则表达式。将您的输入拆分为-,然后取最后两个字符串并在其间添加一个昏迷:

QString str = "en-us-x-test-test1";
QStringList list = str.split('-');
QString output = list.at(list.count()-2) + "," + list.at(list.count()-1);

当然,您必须检查list长度以避免索引错误。