This shows you the differences between two versions of the page.
uso:laboratoare:new:06-auto:basics [2019/11/07 10:39] adrian.zatreanu [Shell scripting] |
uso:laboratoare:new:06-auto:basics [2019/11/12 08:11] (current) maria.mihailescu [Expresii regulate] Fix regex |
||
---|---|---|---|
Line 102: | Line 102: | ||
CHIȚESCU E. Bogdan-Florentin 315CC 9 7.75 6.89 | CHIȚESCU E. Bogdan-Florentin 315CC 9 7.75 6.89 | ||
</code> | </code> | ||
- | Observăm, însă, că se face match și pe șirul ''Fl.'' și pe șirul ''F.'' reprezentând inițiale. Știm că un prenume conține doar litere mici și că **nu** se încheie cu punct (''.'', //dot//). Atunci extindem expresia regulată de mai sus la expresia ''%%[ -]F[a-z]+[^\.]%%''. Expresia regulată face match pe un șir care: | + | Observăm, însă, că se face match și pe șirul ''Fl.'' și pe șirul ''F.'' reprezentând inițiale. Știm că un prenume conține doar litere mici și că **nu** se încheie cu punct (''.'', //dot//). Atunci extindem expresia regulată de mai sus la expresia ''%%[ -]F[a-z]\+[^\.]%%''. Expresia regulată face match pe un șir care: |
* începe cu unul dintre caracterele spațiu (//blank//) sau minus (''-''); | * începe cu unul dintre caracterele spațiu (//blank//) sau minus (''-''); | ||
* continuă cu litera ''F'' (majusculă) | * continuă cu litera ''F'' (majusculă) | ||
Line 339: | Line 339: | ||
IFS=',' | IFS=',' | ||
while read name group final_grade test_grade practical_grade; do | while read name group final_grade test_grade practical_grade; do | ||
- | echo "$name,$group" | + | echo "$name" |
done < students.csv | done < students.csv | ||
</file> | </file> |