IT story

Ruby 문자열에서“\ n”문자열을 어떻게 제거합니까?

hot-time 2020. 8. 4. 22:51
반응형

Ruby 문자열에서“\ n”문자열을 어떻게 제거합니까?


이 문자열이 있습니다.

"some text\nandsomemore"

"\ n"을 제거해야합니다. 난 노력 했어

"some text\nandsomemore".gsub('\n','')

그러나 작동하지 않습니다. 어떻게합니까? 읽어 주셔서 감사합니다.


gsub에서 사용 "\n"하지 않아야 '\n'합니다. 다른 인용 부호는 다르게 동작합니다.

큰 따옴표 "는 문자 확장 및 식 보간을 허용합니다. 이스케이프 된 제어 문자를 사용하여 \n실제 값 (이 경우 newline )을 표시하고 #{expression}변수를 사용할 수 있으며 텍스트에 원하는 루비 식을 거의 사용할 수 있습니다.

반면에 작은 따옴표 '는 문자열을 문자 그대로 취급하므로 확장, 대체, 보간 또는 어떤 것도 없습니다.

이 특별한 경우 에는 개행 을 삭제하기 위해 .delete또는 .trString 메소드를 사용하는 것이 좋습니다 .

자세한 내용은 여기를 참조하십시오


문자열을 교체하지 않고 제거하려는 경우 다음과 같이 사용할 수 있습니다 String#delete(또는 mutator equivalent String#delete!).

x = "foo\nfoo"
x.delete!("\n")

x 이제 "foofoo"와 같습니다

이 경우 실제로 문자열을 다른 것으로 바꾸지 않기 때문에 String#delete보다 읽기 gsub쉽습니다.


문자열에서 선행 및 후행 공백을 모두 제거하고 싶거나 마음에 들지 않으면 strip방법을 사용할 수 있습니다 .

"    hello    ".strip   #=> "hello"   
"\tgoodbye\r\n".strip   #=> "goodbye"

여기에 언급 된대로 .

편집 이 질문의 원래 제목이 다릅니다. 내 대답은 원래 질문에 대한 것입니다.


이를 위해 정규 표현식이 필요하지 않습니다. tr을 사용하십시오 :

"some text\nandsomemore".tr("\n","")

Ruby의 사용 chomp또는 strip기능 :

"abcd\n".chomp => "abcd"
"abcd\n".strip => "abcd"

이봐:

참고 URL : https://stackoverflow.com/questions/4190797/how-can-i-remove-the-string-n-from-within-a-ruby-string

반응형