Так вот мой код:Regex работает должным образом в карете Regex, но при нанесении на баш, не больше
if [[ $line =~ [A-z]{3}\s[A-z]{3}\s[0-9]{2}\s[0-9]{2}:[0-9]{2}:[0-9]{2}\sIST\s[0-9]{4} ]]
then
echo "hello"
fi
Вот текстовый файл:
<table width="100%" border=1 align="center">^M
<tr><th width="10%">Serial No.</th><th width="20%">File/Folder Name</th><th width="40%">Modified Date.</th><th width="10%">Size</th><th width="20%">Open/Download</th></tr>^M
<h4>Folder : "Nifty Free Float Smallcap 100"</h4><br>
<tr><td width="10%">1</td><td width="20%"><a href="Download?path=Nifty Free Float Smallcap 100/Nifty_Free_Float_Smallcap_100_031016.zip">Nifty_Free_Float_Smallcap_100_031016.zip</a></td><td width="40%">Mon Oct 03 16:41:33 IST 2016</td><t</td></tr><tr><td width="10%">2</td><td width="20%"><a href="Download?path=Nifty Free Float Smallcap 100/Nifty_Free_Float_Smallcap_100_041016.zip">Nifty_Free_Float_Smallcap_100_041016.zip</a></td><td width="40%">Tue Oct 04 16:43:20 IST 2
</td></tr><tr><td width="10%">3</td><td width="20%"><a href="Download?path=Nifty Free Float Smallcap 100/Nifty_Free_Float_Smallcap_100_051016.zip">Nifty_Free_Float_Smallcap_100_051016.zip</a></td><td width="40%">Wed Oct 05 17:39:48 IST 2</td></tr><tr><td width="10%">4</td><td width="20%"><a href="Download?path=Nifty Free Float Smallcap 100/Nifty_Free_Float_Smallcap_100_061016.zip">Nifty_Free_Float_Smallcap_100_061016.zip</a></td><td width="40%">Thu Oct 06 16:40:29 IST 2
</td></tr><tr><td width="10%">5</td><td width="20%"><a href="Download?path=Nifty Free Float Smallcap 100/Nifty_Free_Float_Smallcap_100_071016.zip">Nifty_Free_Float_Smallcap_100_071016.zip</a></td><td width="40%">Fri Oct 07 16:46:10 IST 2
</td></tr>^M
</table>
Он работает в regex code, но когда я запускаю это в bash, он больше не работает. Любое предложение очень ценится. спасибо :)
Разбор HTML с помощью BASH регулярное выражение может быть очень подвержен ошибкам. '[A-z]' в любом случае не так. Это должно быть '[A-Za-z]' – anubhava
Поддерживает ли ваша BASH '\ s'? Вместо этого используйте '[[: space:]]'. Кроме того, '[[: alpha:]]' является более точным выражением для соответствия только букв. –