从字符串的特定部分提取所有内容到行尾

时间:2017-04-10 16:37:49

标签: python regex

说我有一个文件abcd.txt
在该文件中,内容为

你好123 [1231 12312 123] 1231231
你好世界[3r45t sds] 6542
123 213 135
4234 gdfg gfd 32
sd23 234 sdf 23
你好,你好[234 23423] 561
你好喜[123 123] 985

我想打印'['字符后面的字符串。
我的输出应该是:
1231231个
6542
561个
985

2 个答案:

答案 0 :(得分:2)

这非常简单。使用.find()方法获取"]"的索引然后使用列表访问器语法获取该行的最后几个字符。 string[a:]将得到" string"的子字符串从" a"开始并在字符串的末尾结束。

file_contents = """hello 123 [1231 12312 123]1231231
hello world[3r45t sds]6542
123 213 135
4234 gdfg gfd 32
sd23 234 sdf 23
hi hello[234 23423]561
hello hi[123 123]985 """

file_lines = file_contents.split("\n")
for line in file_lines:
    bracket_index = line.find("]")
    end_of_line = line[bracket_index + 1:]
    if bracket_index != -1:
        print(end_of_line)

答案 1 :(得分:0)

如果你想要']'之后的代码,这是有效的。如果你想要'['和']'之间,可以修改。

cb <- taskCallbackManager();
cb$add(function(xpr,val,ok,visible){
  if(length( cons<-showConnections())>0) print( cons) 
  else print('0');
  TRUE;
},'mycb');

# [1] "mycb"
# [1] "0"

sample <- read.table("http://www.ats.ucla.edu/stat/examples/ara/angell.txt")

# [1] "0"

我正在检查'[',因为我最初认为你在寻找间隔时间。