相关疑难解决方法(0)

用正则表达式无法逃避反斜杠?

我正在使用以下正则表达式

^[a-zA-Z0-9\',!;\?\$\^:\\\/`\|~&\" @#%\*\{}\(\)_\+\.\s=-]{1,1000}$
Run Code Online (Sandbox Code Playgroud)

我知道这很难看,但到目前为止,除了不允许反斜杠之外它还有其他目的,因为它已经逃脱,我也试过\\而不是\\\相同的结果.有任何想法吗?

regex

105
推荐指数
4
解决办法
19万
查看次数

为什么反斜杠会出现两次?

当我创建一个包含反斜杠的字符串时,它们会重复:

>>> my_string = "why\does\it\happen?"
>>> my_string
'why\\does\\it\\happen?'
Run Code Online (Sandbox Code Playgroud)

为什么?

python string escaping repr backslash

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

Python Regex Word Boundaries没有按预期工作

为什么字边界不起作用?

阅读这个网站,我知道一个单词边界是这样的:

有三种不同的职位符合词边界:

  • 在字符串中的第一个字符之前,如果第一个字符是单词字符.
  • 在字符串中的最后一个字符之后,如果最后一个字符是单词字符.
  • 在字符串中的两个字符之间,其中一个是单词字符,另一个不是单词字符.

a下面的字符串似乎符合上面列出的至少一个位置.

a = 'Builders Club The Ohio State'
re.sub('\bThe\b', '', a, flags=re.IGNORECASE)
Run Code Online (Sandbox Code Playgroud)

输出."The"没有变化.

'Builders Club The Ohio State'
Run Code Online (Sandbox Code Playgroud)

为什么字边界不起作用?

当我在'The'模式之前和之后放置空格时,正则表达式似乎有效.

a = 'Builders Club The Ohio State'
re.sub(' The ', ' ', a, flags=re.IGNORECASE)
Run Code Online (Sandbox Code Playgroud)

输出:

'Builders Club Ohio State'
Run Code Online (Sandbox Code Playgroud)

python regex

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

为什么单词边界正则表达式有双反斜杠,但单反斜杠适用于其他表达式?

例:

def searchResult(expr, inputStr):
    if (re.search(expr, inputStr)):
        return True
    return False

print(searchResult("\s", "the quick brown fox")) # True
print(searchResult("\bfox", "the quick brown fox")) # False
print(searchResult("\\bfox", "the quick brown fox")) # True
Run Code Online (Sandbox Code Playgroud)

我需要双"\\b"字斜杠用于字边界,但只有单个反斜杠"\s"可用于空格字符.为什么字边界需要双反斜杠?

python regex

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

Python re.split()转义反斜杠

我试图让我们python重新分割多个分隔符上的字符串,但它尖叫我的转义反斜杠字符.

我不确定要改变什么,因为当我在python中寻找逃避反斜杠时,这就是我所展示的是正确的......

import re
def get_asset_str(in_str):
    split = re.split(' |/|\\' , in_str)



Traceback (most recent call last):
  File "AssetCheck.py", line 15, in <module>
    get_asset_str(line)
  File "AssetCheck.py", line 4, in get_asset_str
    split = re.split(' |/|\\' , in_str)
  File "C:\Python27\lib\re.py", line 167, in split
    return _compile(pattern, flags).split(string, maxsplit)
  File "C:\Python27\lib\re.py", line 244, in _compile
    raise error, v # invalid expression
sre_constants.error: bogus escape (end of line)
Run Code Online (Sandbox Code Playgroud)

python regex

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

标签 统计

python ×4

regex ×4

backslash ×1

escaping ×1

repr ×1

string ×1