Regex 记事本++;计算每行字符串的出现次数,用于填充sql导入文件
我有一个包含可变列的文件,我正在将其转换为SQL导入文件,或者csv文件 文件的设置如下所示:Regex 记事本++;计算每行字符串的出现次数,用于填充sql导入文件,regex,notepad++,Regex,Notepad++,我有一个包含可变列的文件,我正在将其转换为SQL导入文件,或者csv文件 文件的设置如下所示: Account Source Source2 Source3 Source4 Source5 '39','39' '41','41' '67','67' '286','286' '299','299','2312210299' '307','307' '341','341' '349','349' '351','351' '359',
Account Source Source2 Source3 Source4 Source5
'39','39'
'41','41'
'67','67'
'286','286'
'299','299','2312210299'
'307','307'
'341','341'
'349','349'
'351','351'
'359','359'
'362','362'
'363','363'
'378','378'
'511','511','6218','2197360511'
我试图使用Regex来查找每行中每个字符串的出现次数,这样我就可以使用NULL
填充,但似乎无法正确执行
如果我搜索“[0-9]\*”
,它会找到每个实例
如果我搜索['[0-9]\*']\*$
,它将在每行中找到最后一个实例
如果我使用'[0-9]\*'{2}$
,它找不到每行出现2次的,从我在网上找到的,这应该是语法
如果您能在这方面提供帮助,我们将不胜感激。让我们了解一下为什么您尝试的方法首先不起作用 如果我搜索
“[0-9]*”
,它会找到每个实例
是的,这正是它应该做的;我相信你已经明白了
如果我搜索['[0-9]*']*$
,它将在每行中找到最后一个实例
我不知道你要去哪里,方括号内的方括号是个糟糕的主意
如果我搜索['[0-9]*']*$
,它将在每行中找到最后一个实例。如果我使用'[0-9]*'{2}$
,它找不到每行出现两次的,根据我在网上找到的,这应该是语法
查看此操作不起作用的原因是,'[0-9]*'{2}$
将背对背地匹配两个多位数(或者根本没有数字,因为您使用的是星号)。但是数据集中的数字由一个分隔,
您必须考虑到这一点。Regex是一个显式工具
您要做的是-^(“[0-9]*”,?){2}$
请注意,捕获组中存在可选的,
。上面的正则表达式将匹配引号内有2个数字的行(或者根本没有数字,因为我们使用的是星号,所以只有一个”
),由,
分隔
这是我的建议
我不确定这是否是您想要的,如果不是,请将其注释下来,我将编辑答案以提供更多内容。您希望提取和/或匹配什么?您想做什么?你期待什么?谢谢Chase,我正试图找出如何将逗号合并到搜索中,但是我的数据的最后一个实例没有逗号,而且,好吧,我对regex是新手,还没有完全了解整件事。