0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Pythonの文字列で、「( )」で囲まれた内側部分のスペースを削除する

Last updated at Posted at 2023-07-07

修正

「( )」の内部に「(」が含まれているケースに対応できていませんでした。「( )」は最小範囲となるようにコードを修正いたしました。

結論

正規表現を使用して、カッコの内部をマッチさせるようにします。そこからさらに内部のスペースを空文字に置換させることでタイトルのことができます。

サンプルコード

※2重カッコには対応しておりません。あらかじめご了承願います。

.py
import re

# 文字列のカッコの内部のスペースのみを削除
def remove_spaces_in_parentheses(input_string):
    pattern = r'\(([^())]*)\)'
    result = re.sub(pattern, lambda match: '(' + match.group(1).replace(' ', '') + ')', input_string)
    return result

def main():
    sample_string = '  h o ge  ( ho ge h o ge hoge h o  g  e  ) ho ge   h o g e  (  h o g  e )  )  (   (ho   ge)  ho g   e   '
    result = remove_spaces_in_parentheses(sample_string)
    print(result)

if __name__ == '__main__':
    main()

結果

  h o ge  (hogehogehogehoge) ho ge   h o g e  (hoge)  )  (   (hoge)  ho g   e   

以上です。

0
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?