簡體   English   中英

在Ruby中使用正則表達式從字符串中獲取數據

[英]grabbing data from a string with regex in Ruby

我可以使用一些幫助編寫正則表達式來僅選擇硬括號之間的“ X”。 該信息在文本文件中,我可以每一行都是其自己的字符串。

1.[ ]: Build a blanket fort
2.[X]: Eat a pancake
53.[X]: Change the sheets
4.[ ]: Make a model airplane
10.[X]: FizzBuzz

模式.*\\[(.*?)\\].*可以滿足您的需要(請注意方括號的轉義),並在第一個/唯一匹配組的方括號之間放置任何內容。

例如'2.[X]: Eat a pancake'.match('.*\\[(.*?)\\].*')[1]將返回X'4.[ ]: Make a model airplane'.match('.*\\[(.*?)\\].*')[1]將返回一個空格。

如果您不希望返回沒有X(或其他任何值)的匹配項,請替換.*? 如果您只希望輸入一個大寫字母,請在方括號內加上您想要匹配的內容,例如.*\\[([AZ]*)\\].*

line = '53.[X]: Change the sheets'

if line.include? '[X]'
  puts 'This answer was selected'
end

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM