1
local invoiceData =
[[I N V O I C E
Invoice No. :
ABCDEFG125469857
Invoice Date May
2012
]]

我使用的模式是

 print (string.match(invoiceData,'\nInvoice Date (.-)\n'))

我想获取作为MAY12的字符串发票日期。或0512 .. 请帮忙

谢谢

4

1 回答 1

2

不要与 匹配.-,而是更具体地使用%w+(alpha-nums) 和%d+(digits) 来匹配月份和年份。

剧本:

local invoiceData =
[[I N V O I C E
Invoice No. :
ABCDEFG125469857
Invoice Date May
2012
]]

month, year = string.match(invoiceData,'Invoice%s+Date%s+(%w+)%s+%d*(%d%d)')
print(month, year)

将打印:

5月12日
于 2012-06-28T10:59:30.743 回答