c++ - 使用 QString 替换方法用正则表达式更改文件名

标签 c++ regex qt

我想将如下所示的字符串:“/d/r/e/filename.csv”转换为“/d/r/e/filename D9.csv”。我使用正则表达式只是因为我在练习,我知道我可以用不同的方式来做。

我正在尝试:

QString string("/d/r/e/filename.csv");
string.replace("([\\w]+)(?=\\.csv)", "\\1 D9");

但似乎没有用,我只是得到相同的字符串。

最佳答案

你得到相同的字符串,因为你没有在那里使用 QRegExp:

string.replace(QRegExp("([\\w]+)(?=\\.csv)"), "\\1 D9");

关于c++ - 使用 QString 替换方法用正则表达式更改文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33989195/

相关文章:

c++ - 如何将哈希表存储在文件中?

c++ - 一个union需要多少内存

ruby-on-rails - ActiveRecord::Extensions::SqliteRegexp:Class 的未定义方法 class_inheritable_accessor

c++ - 如何在屏幕外窗口中呈现焦点指示器?

python - 如何更改 QTreeView 标题(又名 QHeaderView)的背景颜色?

c++ - 我可以通过其基础的默认构造函数实例化一个结构吗?

regex - 如何仅打印与 sed 匹配的内容?

不包含字符串的所有字符串的正则表达式?

c++ - 从配置文件 qsetting 中删除键/值对

c++ - 如何在 visual studio 2015 c++ 中包含 hidapi