相关疑难解决方法(0)

正则表达式[Az]和[a-zA-Z]之间的区别

我正在使用正则表达式为一个文本框编写输入验证器,我只想要字母字符.我在想,如果[A-z][a-zA-Z]是相等的或是否存在差异明智的性能.

我继续阅读[a-zA-Z]我的搜索,没有提到[A-z].

我正在使用java的String.matches(regex).

java regex

50
推荐指数
5
解决办法
5万
查看次数

[A-z0-9] +正则表达式匹配方括号

我正在努力应对以下正则表达式

[A-z0-9]+
Run Code Online (Sandbox Code Playgroud)

如果对此字符串进行测试:

||a919238[.--a]asd|
Run Code Online (Sandbox Code Playgroud)

它返回a919238[,包括方括号..我试图在regex101上输入我的测试用例以了解什么是错的,但网站正则表达式的解释没有帮助,可能我无法看到我的错误.

为什么方括号包含在结果中?

regex

50
推荐指数
3
解决办法
9538
查看次数

为什么字符范围类[Az]匹配下划线?

用多种语言尝试了同样的结果.

JavaScript示例:

/[A-z]/.test("_"); // => true
/[A-z]/.test("0"); // => false
/[A-z]/.test("-"); // => false
/[A-z]/.test("A"); // => true
Run Code Online (Sandbox Code Playgroud)

为什么第一个案例没有退缩false

regex

9
推荐指数
1
解决办法
1617
查看次数

我想在使用javascript正则表达式时忽略方括号

我正在使用javascript正则表达式进行一些数据验证并指定我想接受的字符(我想接受任何字母数字字符,空格和以下内容!&,'\-,如果需要我可以稍后再添加一些).我的代码是:

var value = userInput;
var pattern = /[^A-z0-9 "!&,'\-]/;
if(patt.test(value) == true) then do something
Run Code Online (Sandbox Code Playgroud)

它工作正常,并排除了我不希望用户输入的字母,除了方括号和插入符号.从我读过的所有javascript正则表达式教程中,它们都是特殊字符 - 括号表示它们之间的任何字符和此实例中的插入符号意味着任何不在方括号之间的字符.我在这里和谷歌搜索了解为什么这些字符也被接受但无法找到解释.

所以任何人都可以帮忙,为什么我的输入接受方括号和插入符?

javascript regex

4
推荐指数
1
解决办法
1319
查看次数

用熊猫将字符串分成数字和文本

设置

我有一个pandas数据框,其中包含一列“ iso”,其中包含化学同位素符号,例如“ 4He”,“ 16O”,“ 197Au”。我想使用中的annotate()功能在图上标记很多(但不是全部)同位素matplotlib。标签格式应具有上标原子质量。我可以使用LaTeX样式格式来做到这一点:

axis.annotate('$^{4}$He', xy=(x, y), xycoords='data')
Run Code Online (Sandbox Code Playgroud)

annotate()对于要标记的每种同位素,我可以写出数十种上述语句,但我希望实现自动化。

问题

如何从iso列中提取同位素编号和名称?

提取这些片段后,我就可以制作标签了。可以说我们将它们转储到变量Num和中Sym。现在,我可以遍历同位素并执行以下操作:

for i in list_of_isotopes:
  (Num, Sym) = df[df.iso==i].iso.str.MISSING_STRING_METHOD(???)
  axis.annotate('$^{%s}$%s' %(Num, Sym), xy=(x[Num], y[Num]), xycoords='data')
Run Code Online (Sandbox Code Playgroud)

大概有一个pandas字符串方法,我可以放在上面。但是我很难找到解决方案。我一直在尝试split()extract()使用几种不同的模式,但无法获得理想的效果。

python string pandas

4
推荐指数
1
解决办法
5249
查看次数

过滤/ grep函数表现奇怪

使用以下代码从字符串列表中仅选择字母数字字符串:

isValid = function(string){
  return(grep("^[A-z0-9]+$", string))
}

strings = c("aaa", "test@test.com", "", "valid")

print(Filter(isValid, strings))
Run Code Online (Sandbox Code Playgroud)

输出是[1] "aaa" "test@test.com".

为什么"valid"不输出,为什么"test@test.com"输出?

regex r

4
推荐指数
1
解决办法
53
查看次数

匹配右括号时Android中的正则表达式模式错误

我正在使用java.util.regex.Pattern类来匹配Android程序中的字符串。

if(Pattern.matches("\\{\\{.*?}}", element.getValue())) {
   ...             
} else {
   ...
}
Run Code Online (Sandbox Code Playgroud)

我得到了以下错误。

 Caused by: java.util.regex.PatternSyntaxException: Syntax error in regexp pattern near index 8
                                                                  \{\{.*?}}
Run Code Online (Sandbox Code Playgroud)

我正在使用Android Studio和Open JDK。为了测试正则表达式,我在Netbeans中编写了一个简单程序,它工作正常。Netbeans也使用openjdk。

System.out.println(Pattern.matches("\\{\\{.*?}}", "{{hello:sdf}}"));
Run Code Online (Sandbox Code Playgroud)

为什么正则表达式在android项目中给出错误?

java regex android

4
推荐指数
1
解决办法
706
查看次数

删除字母之间的空格[A-Za-z]

如何删除字母NOT数字之间的空格

例如:

输入

I ES P 010 000 000 000 000 000 001 001 000 000 IESP 000 000
Run Code Online (Sandbox Code Playgroud)

产量

IESP 010 000 000 000 000 000 001 001 000 000 IESP 000 000
Run Code Online (Sandbox Code Playgroud)

我试过这样的事

gsub("(?<=\\b\\w)\\s(?=\\w\\b)", "", x,perl=T)
Run Code Online (Sandbox Code Playgroud)

但是无法达到我希望的输出

regex r

4
推荐指数
1
解决办法
140
查看次数

匹配 R 正则表达式中的字母

假设我运行以下

txt <- "client:A, field:foo, category:bar"
grep("field:[A-z]+", txt, value = TRUE, perl = TRUE)
Run Code Online (Sandbox Code Playgroud)

基于regexr.com我希望我会得到field:foo,但我得到了整个字符串。为什么是这样?

regex r

3
推荐指数
1
解决办法
3011
查看次数

如何编写一个 Python 正则表达式来匹配包含单词和数字的字符串,排除仅包含数字的字符串?

我想编写一个正则表达式来匹配可能包含单词和数字而不仅仅是数字的字符串。

我使用了这个正则表达式[A-z+\d*],但它不起作用。

一些匹配的样本:

expression123
123expression
exp123ression
Run Code Online (Sandbox Code Playgroud)

不匹配的样本:

1235234567544
Run Code Online (Sandbox Code Playgroud)

你能帮我解决这个问题吗?先感谢您

python regex

3
推荐指数
1
解决办法
111
查看次数

标签 统计

regex ×9

r ×3

java ×2

python ×2

android ×1

javascript ×1

pandas ×1

string ×1