Regex 在围棋中,我如何陈述我想要匹配所有类型的空间,包括不间断的空间?

Regex 在围棋中,我如何陈述我想要匹配所有类型的空间,包括不间断的空间?,regex,unicode,go,whitespace,Regex,Unicode,Go,Whitespace,我必须匹配如下所示的给定模式: Place *: *(.*) 换句话说,我有一个标签,一些空格,一个冒号,一些空格和我想要的值 但是,我的数据中有些地方的空格不是通常的20ASCII字符,而是不间断的空格(unicode字符\u00A0)。我怎样才能匹配它们?我想用 Place\s*:\s*(.*) 但它似乎不适用于\u00A0空白。这是regexp模块的一个bug还是想要的行为?如果是后者,如何在不列出所有空格的情况下匹配所有类型的空格?将\s限制为(≡ [\t\n\f\r]),这似乎非常

我必须匹配如下所示的给定模式:

Place *: *(.*)
换句话说,我有一个标签,一些空格,一个冒号,一些空格和我想要的值

但是,我的数据中有些地方的空格不是通常的
20
ASCII字符,而是不间断的空格(unicode字符
\u00A0
)。我怎样才能匹配它们?我想用

Place\s*:\s*(.*)
但它似乎不适用于
\u00A0
空白。这是regexp模块的一个bug还是想要的行为?如果是后者,如何在不列出所有空格的情况下匹配所有类型的空格?

\s
限制为
(≡ [\t\n\f\r])
,这似乎非常标准

在这种情况下,在使用regexp之前预处理字符串可能更容易。
例如,将字符串拆分为空格

这将考虑不可破坏的空格,因为报告符文是否是Unicode的空白属性定义的空格字符;在拉丁语-1中,这是:

'\t', '\n', '\v', '\f', '\r', ' ', U+0085 (NEL), U+00A0 (NBSP).
代码将
\s
限制为
(≡ [\t\n\f\r])
,这似乎非常标准

在这种情况下,在使用regexp之前预处理字符串可能更容易。
例如,将字符串拆分为空格

这将考虑不可破坏的空格,因为报告符文是否是Unicode的空白属性定义的空格字符;在拉丁语-1中,这是:

'\t', '\n', '\v', '\f', '\r', ' ', U+0085 (NEL), U+00A0 (NBSP).

惊人的答案。谢谢,回答得很好。我不知道默认情况下,
字段
会这样做。答案太棒了。谢谢,回答得很好。我不知道默认情况下,
字段
会这样做。