0
텍스트 파일 내에서 문자열을 바꿔서 문자열의 정확한 일치 만 바꾸려고합니다.파이썬은 그 뒤에 특정 문자가없는 문자열을 대체합니다.
파일이었다 그래서 경우 :
"word"
"word_1"
"word1"
"wordA"
난 그냥
word
test_1
와 나는이 할 것 교체하려면 :
text.replace("word", "test_1")
을하지만이 작업을 수행하여, 나는 또한 다른 모든 word
로 대체하고 그 문자열 뒤에있는 다른 텍스트. 그래서 파일은 다음과 같습니다
"test_1"
"test_1_1"
"test_11"
"test_1A"
나는 단지 어떤 소문자, 대문자가없는 경우 대체 또는 이후에 밑줄 있도록 그래서 나는 단지 word
을 대체 할 수 있습니다합니다. 바꾸기가 정확한 일치로만 제한되기를 바랍니다. 따라서 파일에 문자와 숫자가 같거나 밑줄이있는 동일한 텍스트가있는 다른 문자열이 있으면 영향을받지 않습니다. 또한 원하는 그래서 다른 문자는 경우처럼 문자, 숫자 또는 밑줄이 대체됩니다되지 않은 그 후에 경우 :
word"
word;
word:
가 문자, 숫자가 이후 강조하지 않기 때문에 사람들은 잘 될 것 그들. 파일이 될 수 있도록
text.replace("word", "test_1")
text.replace("word_1", "test_2")
text.replace("word1", "test_3")
text.replace("wordA", "test_4")
:
test_1
test_2
test_3
test_4
어떻게 이런 짓을 했을까
나는 이것이 내가 같은 다른 것들로 다른 문자열을 대체 할 수 원하는?
을이 정규 표현식에 대한 작업 같은 소리! – Max
're.sub (r '\ bword \ b', 'test_1', text)'? http://ideone.com/UNEywY를 참조하십시오. –
누구든지 regex 태그를 추가하면 http://stackoverflow.com/questions/15863066/python-regular-expression-match-whole-word –