Python3正则表达式:删除除/和|之外的所有字符来自字符串

时间:2017-01-20 23:44:14

标签: python regex python-3.x

我正在用Python3编写程序,我在变量中有一个字符串。此字符串包含许多|/个字符,以及可能的字母数字字符和空格。

我需要一个正则表达式来删除除|/之外的所有字符,并将其替换为空。

基本上,/|||/ blah /|||||/ foo /|/ bar /|||/将成为/|||//|||||//|//|||/

任何人都可以帮我这样做吗?提前致谢

3 个答案:

答案 0 :(得分:3)

上述内容也可以缩短为re.sub('[^/|]'),即无需转义两个字符。

答案 1 :(得分:2)

 public class Prize {

  String name;
  int price;


  public Prize(String name, int price){
    this.name = name;
    this.price = price;
  }


  public String getName()
  {
    return name;
  }

  public int getPrice()
  {
    return price;
  }

  public void setName(String name)
  {
    this.name = name;
  }

  public void setPrice(int price)
  {
    this.price = price;
  }




 }

答案 2 :(得分:1)

使用正则表达式。 http://regexr.com/是一个很好的编写自己的工具,但我在下面为你做了。

import re                                       #import regex module

str = '/|||/ blah /|||||/ foo /|/ bar /|||/'
str = re.sub(r"[^|/]", "", str)                 #replaces everything that is not | or /

print(str)