Seleniumのdriver.find_element(:css, '.element').textで、テキストを取得した後に文字を加工したい時があります。その時に個人的によく使いそうな正規表現などをまとめました。

数字とカンマ以外を削除する

.delete('^0-9', '^,')

全角数字から半角に変換

.tr('0-9','0-9')

カンマ区切りの文字列を配列にする

.split(',')

空白を削除する

.gsub(' ', '')

空白を配列にする

.split(/[[:space:]]/)

文字数指定でテキストを取得する

str = "hello"
p str[0] #h
p str[-2]  #l

改行と空白が含まれている文字列から配列として分割する

pythonの場合「.splitlines()」で、同じことが出来る

.split(/\R/)

サイズの数字が可変な場合の対応

regular2

.match(/保証付き発送.*/).to_s

文字列の後にbrタグ2つと数字がある場合

regular

.match(/☆ランク☆\s\s[0-9]/).to_s

URLから特定の文字列(AYG0088)を取得する

url = 'https://www.backcountry.com/alo-yoga-soho-pullover-womens?skid=AYG0088-NECHE-S&ti=UExQIFJ1bGUgQmFzZWQ6V29tZW4ncyBGZWF0dXJlZCBBY3RpdmV3ZWFyIDoxOjE6'.match('skid=[a-zA-Z0-9]+').to_s.split('=')
p url[1] # AYG0088