V tomto tématu jsme si vysvětlili, jak vypočítat podřetězec daného řetězce.
Podřetězec je posloupnost znaků v řetězci. Bash poskytuje možnost extrahovat informace ze samotného řetězce. Číslice nebo daný řetězec můžete extrahovat několika způsoby.
Například, 'vítám vás na Javatpointu.' je podřetězec 'Vítáme vás na Javatpointu.'
Syntax
Příkaz pro extrakci podřetězce je vestavěný příkaz bash, a proto je velmi dobré jej použít z hlediska výkonu.
Syntaxi extrakce podřetězců lze definovat jako:
${variable:offset:length}
kde,
Proměnná je název proměnné, která obsahuje řetězec.
Offset se používá k určení pozice, odkud má začít extrakce řetězce.
Délka se používá k určení rozsahu znaků, které mají být provedeny z offsetu.
Poznámka:Přiřazení délky je volitelné. Pokud není zadána délka, bude konec řetězce považován za konec podřetězce.
Pojďme pochopit koncept extrahování podřetězce z řetězce pomocí několika příkladů:
Příklad 1: Extrahování až specifických znaků ze začátku
#!/bin/bash #Script to extract first 10 characters of a string echo 'String: We welcome you on Javatpoint.' str='We welcome you on Javatpoint.' echo 'Total characters in a String: ${#str} ' substr='${str:0:10}' echo 'Substring: $substr' echo 'Total characters in Substring: ${#substr} '
Výstup
Příklad 2: Extrahování od konkrétní postavy dále
#!/bin/bash #Script to print from 11th character onwards str='We welcome you on Javatpoint.' substr='${str:11}' echo '$substr'
Výstup
you on Javatpoint.
Zde je konec řetězce považován za konec podřetězce.
Příklad 3: Extrahování jednoho znaku
#!/bin/bash #Script to print 11th character of a String str='We welcome you on Javatpoint.' substr='${str:11:1}' echo '$substr'
Výstup
y
Příklad 4: Extrahování konkrétních znaků z posledního
#!/bin/bash #Script to extract 11 characters from last str='We welcome you on Javatpoint.' substr='${str:(-11)}' echo '$substr'
Výstup
Javatpoint.