R 筛选不需要的结果的base64正则表达式
从正则表达式中筛选不需要的匹配项 我在R中提取base64编码字符串,并使用以下正则表达式:R 筛选不需要的结果的base64正则表达式,r,regex,base64,R,Regex,Base64,从正则表达式中筛选不需要的匹配项 我在R中提取base64编码字符串,并使用以下正则表达式: \b[A-Za-z0-9+/]\b 99%的时间都可以,但当我遇到这样(或类似)的情况时: 在我把单词折叠起来的地方,我会得到匹配。我的数据乱七八糟,就像这样 有没有办法在修改我原来的正则表达式时过滤掉它们 这个问题可能很明显,但我对正则表达式比较陌生 您可以考虑在表达式上设计几个边界 你可能拥有和发生的1%概率 可以帮助您设计这样的表达式,只需添加一些边界,如: 应该使用(?=)和一些出现次数{n,
\b[A-Za-z0-9+/]\b
99%的时间都可以,但当我遇到这样(或类似)的情况时:
在我把单词折叠起来的地方,我会得到匹配。我的数据乱七八糟,就像这样
有没有办法在修改我原来的正则表达式时过滤掉它们
这个问题可能很明显,但我对正则表达式比较陌生
您可以考虑在表达式上设计几个边界 你可能拥有和发生的1%概率
可以帮助您设计这样的表达式,只需添加一些边界,如:- 应该使用
和一些出现次数(?=)
(虽然这不是最佳边界,但它可能有助于您设计一个,我不太确定base64){n,}
- 您还可以在
周围添加一个长度边界,使其与可能具有低百分比概率的示例字符串不匹配\b()\b
itisyourpersonalenergyspecialistitisyourpersonalenergyspecialist
作为base64字符串几乎是0
。即使您有一些与base64格式稍接近的随机字符串,可能与我突出显示的字符串类似,但一个好的表达式仍然可以简单地排除它
如果您愿意,您可以添加许多类型的边界,以达到几乎100%的精度。这不是一个好的表达方式,但它可能会让您大致了解:
(?=.+[A-Z]{2,})(?=.+[a-z]{2,})(?=.+[0-9]{2,})([A-Za-z0-9+\/]{100,})
此表达式可能只是表示字符串输入:
- 必须至少有两个相邻的[a-Z]字符
- 必须至少包含两个相邻的[a-z]字符
- 必须至少包含两个相邻的[0-9]字符(我非常确定这一个)
- 至少应有100个base64字符长度
你可以考虑我添加的这些量词,如<代码> { 2,}和<代码> { 100,},只是简单地显示你可以排除在你的问题中所举例的字符串。您很可能会为这个匹配设计出无数更好的表达式,希望达到100%的准确率
附加演示: 可能会帮助您了解量词的工作原理:
([A-Za-z0-9+\/]{100,})
总的来说,你当然可以这样做
您可以考虑在表达式上设计几个边界 你可能拥有和发生的1%概率
可以帮助您设计这样的表达式,只需添加一些边界,如:- 应该使用
和一些出现次数(?=)
(虽然这不是最佳边界,但它可能有助于您设计一个,我不太确定base64){n,}
- 您还可以在
周围添加一个长度边界,使其与可能具有低百分比概率的示例字符串不匹配\b()\b
itisyourpersonalenergyspecialistitisyourpersonalenergyspecialist
作为base64字符串几乎是0
。即使您有一些与base64格式稍接近的随机字符串,可能与我突出显示的字符串类似,但一个好的表达式仍然可以简单地排除它
如果您愿意,您可以添加许多类型的边界,以达到几乎100%的精度。这不是一个好的表达方式,但它可能会让您大致了解:
(?=.+[A-Z]{2,})(?=.+[a-z]{2,})(?=.+[0-9]{2,})([A-Za-z0-9+\/]{100,})
此表达式可能只是表示字符串输入:
- 必须至少有两个相邻的[a-Z]字符
- 必须至少包含两个相邻的[a-z]字符
- 必须至少包含两个相邻的[0-9]字符(我非常确定这一个)
- 至少应有100个base64字符长度
你可以考虑我添加的这些量词,如<代码> { 2,}和<代码> { 100,},只是简单地显示你可以排除在你的问题中所举例的字符串。您很可能会为这个匹配设计出无数更好的表达式,希望达到100%的准确率
附加演示: 可能会帮助您了解量词的工作原理:
([A-Za-z0-9+\/]{100,})
总的来说,你当然可以这样做
您希望得到什么作为您的输出?您将始终存在误报,正常字可以是有效的base64字符串。如果您想将正则表达式限制为某些特定的base64字符串子集,请指出这些要求。我正在试图弄清楚这是做什么的
\b[A-Za-z0-9+/]\b
。它是一个由单词边界结构包围的单字符类吗?您希望得到什么作为输出?您将始终存在误报,普通单词可以是有效的base64字符串。如果您想将正则表达式限制为某些特定的base64字符串子集,请指出这些要求。我正在试图弄清楚这是做什么的\b[A-Za-z0-9+/]\b
。它是一个由单词边界结构包围的单个字符类吗?