相关疑难解决方法(0)

Notepad++:: 通过正则表达式完全删除包含问号的行

嗯,我想这就是我的标题,这对于我将要实现的目标来说是不言自明的。

这是我当前的文本文件的示例:

"Diva" was the winning song of the Eurovision Song Contest 1998.
Who will win Eurovision Song Contest 2015?
Eurovision Song Contest Statistics:
Who will win Eurovision 2015?
Run Code Online (Sandbox Code Playgroud)

这就是我想要得到的:

"Diva" was the winning song of the Eurovision Song Contest 1998.
Eurovision Song Contest Statistics:
Run Code Online (Sandbox Code Playgroud)

因此基本上包含该?字符的每一行(该位置不一定必须在该行的末尾)将被替换为任何内容。

我已经尝试过,[^\r\n]*?[^\r\n]*([\r\n]+|$)但它删除了太多。

regex string text replace notepad++

5
推荐指数
1
解决办法
4400
查看次数

为什么只有 ) 是一个特殊字符而不是 } 或 ]?

我正在阅读Jan Goyvaerts 的“正则表达式:完整教程和参考来补充我的正则表达式。

在第二章中,Jan 有一节关于“特殊字符”:

特殊的角色

因为我们想要做的不仅仅是搜索文本的文字片段,所以我们需要保留某些字符以供特殊用途。在本教程讨论的正则表达式中,有 12 个具有特殊含义的字符:反斜杠 \、插入符号 ^、美元符号 $、句点或点 .、竖线或管道符号 |、问号 ?、星号或星号 *、加号 +、左括号 (, 右括号 )、左方括号 [ 和左花括号 {,这些特殊字符通常被称为“元字符”。大部分单独使用时都会出错。

(强调我的)

我知道只有开方括号和开大括号是特殊的,因为如果没有前面的开,则右括号或括号显然是文字。但是,如果其他两个关闭的不是特殊字符,为什么 Jan 指定关闭括号一个特殊字符?

regex

5
推荐指数
1
解决办法
995
查看次数

使用 re.sub 替换多个字符

s = "Bob hit a ball!, the hit BALL flew far after it was hit."
Run Code Online (Sandbox Code Playgroud)

我需要从 s 中删除以下字符

!?',;.
Run Code Online (Sandbox Code Playgroud)

如何使用 re.sub 来实现这一点?

re.sub(r"!|\?|'|,|;|."," ",s) #doesn't work. And replaces all characters with space
Run Code Online (Sandbox Code Playgroud)

有人能告诉我这有什么问题吗?

python regex string python-2.7

5
推荐指数
1
解决办法
6780
查看次数

如何将 git grep 与正则表达式一起使用?

我多年来一直使用它git grep来搜索固定字符串,但很少使用它来进行正则表达式搜索。

\n

我的代码中有一些带有非本地化字符串的地方。例如:

\n
   JLabel label =  buildLabel("Alphabet");\n
Run Code Online (Sandbox Code Playgroud)\n

在本例中buildLabel()是继承的实用方法。还有buildBoldLabel()buildMultiLineLabel()、 和buildTextArea()

\n

因此,我想在我的代码中搜索这些方法的使用,而不查找本地化字符串。正确的调用应该是:

\n
   JLabel label =  buildLabel(getString("Alphabet"));\n
Run Code Online (Sandbox Code Playgroud)\n

我非常熟悉正则表达式,并且我发现它git grep支持 Perl 字符类。所以我想这会很容易:

\n

$ git grep -P "buildLabel(\\"\\w+\\")"

\n

这不会返回任何结果。所以我在没有 Perl 扩展的情况下尝试了它。

\n

$ git grep "buildLabel(\\"[a-zA-Z_]+\\")"

\n

还是……没有结果。我验证了我可以使用固定字符串进行搜索。

\n

$ git grep "buildLabel(\\"Alphabet\\")"

\n

这返回了我已经知道存在的代码中的实例。然而 ...

\n

$ git grep -P "buildLabel(\\"Alphabet\\")"

\n

不返回任何结果。

\n

我还尝试更改引号字符并得到相同的结果。

\n

$ git grep -P 'buildLabel("\\w+")'... 没有结果

\n …

git grep

5
推荐指数
1
解决办法
2423
查看次数

正则表达式匹配一个时期

我试图找出一个匹配a的正则表达式.(期).我寻找一个公式,但没有匹配期间的公式.

12903,03930.
Run Code Online (Sandbox Code Playgroud)

regex matching

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

Python Regex 将匹配项转换为字典

text = "Bob|19|01012017"
pat = re.compile("(?P<name>.+)|.*|(?P<bday>.+)") #hopefully this regex is correct
result = pat.match(text)
d = result.groupdict()
print d
Run Code Online (Sandbox Code Playgroud)

我得到的 d 是:

{'bday': None, 'name': 'Bob|19|01012017'}
Run Code Online (Sandbox Code Playgroud)

我想要的是:

{bday: "01012017", name: "Bob"}
Run Code Online (Sandbox Code Playgroud)

有人可以指出我做错了什么吗?我只需要 dict 的两个字段,所以我没有写年龄部分。

python regex

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

jQuery:html()中的replace()

如何用html替换replace()

<div>
    <a href="http://www.google.com">google.com</a>
</div>
Run Code Online (Sandbox Code Playgroud)

JS:

var e = $("div"),
    fix = e.html().replace("google.com", "duckduckgo.com");
e.html(fix);
Run Code Online (Sandbox Code Playgroud)

我猜html()的工作方式不一样text()吗?

测试:http://jsfiddle.net/Hmhrd/

html jquery replace

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

在 bash 中用空格分隔整个单词

说我有这个数据:

hi helo tmp#100000 bye
100000 hi bye
hi 100000 bye
Run Code Online (Sandbox Code Playgroud)

并且 100000 是可变的: $var 我只想将 100000 作为一个完整的词 grep ,所需的输出:

100000 hi bye
hi 100000 bye
Run Code Online (Sandbox Code Playgroud)

我已经尝试了所有在 StuckOverflow 中得到回答的东西,但似乎没有任何效果: grep "\b$var\b", grep -E "[[:blank:]]$var[[:blank:]]"还有更多。我认为问题,可能在#. 该解决方案需要适用于变量等于:hi.*bye作为正则表达式的情况。

请帮忙

regex unix awk grep

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

.split()包含字符“ ++”的字符串

假设我有以下代码块:

String x = "Hello ++ World!";
if(x.contains(" ++ "))
    System.out.println(x.split(" ++ ")[0]);
Run Code Online (Sandbox Code Playgroud)

为什么执行此代码时会收到输出:

  • Hello ++ World!代替Hello

显然,它与有关split(),但是,我无法弄清楚。

java regex split

2
推荐指数
1
解决办法
103
查看次数

为什么不能计算字符串中的管道字符?

select Values, REGEXP_COUNT(values,'|') from Products 
Run Code Online (Sandbox Code Playgroud)

样本值单元格:

Product|Cash|Loan|Customer
Run Code Online (Sandbox Code Playgroud)

选择的结果是27。如果算其他字符,它可以工作,但是如果我要算| 它计算整个字符串。为什么,如何计数管道?

regex sql oracle pipe

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

标签 统计

regex ×8

grep ×2

python ×2

replace ×2

string ×2

awk ×1

git ×1

html ×1

java ×1

jquery ×1

matching ×1

notepad++ ×1

oracle ×1

pipe ×1

python-2.7 ×1

split ×1

sql ×1

text ×1

unix ×1