正则表达式:如何接受任何符号

时间:2011-02-20 16:45:40

标签: regex

我想在符号之间替换文本文件中的任何内容<和>

接受任何符号的正则表达式是什么?我现在:

fields[i] = fields[i].replaceAll("\\<[a-z0-9_-]*\\>", "");

但它只适用于字母和数字,如果中间有一个符号&lt;和&gt;,不替换字符串。

感谢

4 个答案:

答案 0 :(得分:34)

要接受任何符号,。*应该这样做

答案 1 :(得分:19)

试试这个[^\>]*(任何不是>的字符)

答案 2 :(得分:1)

正则表达式中的任何字符都是“。” “*” - 是量词,有多少。因此,如果您只想要一个字符,那么使用“。” (点)就是这样。

答案 3 :(得分:0)

这是更大图片方法的通用名称,表示您要清除(或选择)字符串中的任何符号。

更清洁的方法是选择不是字母数字的任何内容,只需使用/\W/,就可以消除它必须是一个符号,请参见[1]。正则表达式将是

let re = /\W/g

// for example, given a string and you would like to
// clean out any non-alphanumerics
// remember this will include the spaces

let s = "he$$llo# worl??d!"

s = s.replace(re, '') // "helloworld"

但是,如果您需要排除除少数以外的所有非字母数字,请在前面的示例中说“空格”。您可以使用[^ ...](帽子)模式。

let re = /[^ \w]/g    // match everything else except space and \w (alphanumeric)

let s = "he$$llo# worl??d!"

s = s.replace(re, '')  // "hello world"

参考:

[1] https://regexone.com/