The UNIX and Linux Forums  

Go Back   UNIX og Linux Forums > Top Forums > Shell Programmering og Scripting
.
google unix.com



Shell Programmering og Scripting Post spørgsmål om ksh, CSH, SH, Bash, Perl, PHP, SED, AWK og ANDRE shell scripts og Shell scriptsprog her.

Mere UNIX og Linux Forum Emner du måske kan finde Helpful
Tråd Thread Starter Forum Svar Last Post
afprøve en string ... Kaminski UNIX for dummyer Spørgsmål & svar 2 02-12-2008 05:37 AM
Med Regex Spliting strengen i Alphanumeric og Numeriske del ozgurgul Shell Programmering og Scripting 1 06-30-2007 10:52 AM
Alfanumerisk streng Operations lakshmikanth UNIX for dummyer Spørgsmål & svar 3 01-05-2007 06:55 AM
string-test? hedrict UNIX for dummyer Spørgsmål & svar 9 03-29-2002 03:57 PM
matching alfanumerisk streng sskb Shell Programmering og Scripting 4 12-12-2001 10:48 AM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Søg denne tråd Rate Thread Display Modes
  #1 (permalink)  
Old 10-15-2007
tugger tugger is offline
Registreret Bruger
  
 

Join Date: oktober 2007
Stillinger: 9
Smile ksh - test, hvis strengen indeholder alfanumeriske ...

Okay jeg vil lade brugernes input-rum samt

Jeg har en mental blokering. Jeg har gjort et par søgninger, men havent fundet noget, som jeg forstår (den holder af: alpha: og awk).

Dybest set ønsker jeg at give brugeren mulighed for at indtaste noget tekst, som vil gå ned som et område inden for en flad fil (som er delimeted af:).

Jeg ønsker at begrænse dette til 50 tegn (jeg tror, jeg kan bruge skrift-Z50 til dette)

Jeg vil bare az, AZ, (mellemrum) og tal. Hvad er den bedste måde at validere input?
  #2 (permalink)  
Old 10-15-2007
jim McNamara jim mcnamara is offline Forum Staff  
...@...
  
 

Join Date: Feb 2004
Beliggenhed: NM
Indlæg: 5.770
En måde er at bruge tr til at fjerne uønskede tegn typer. -DC fjerner alt undtagen dem char typer, du angiver. [: alnum;] er alfanumerisk, så hvis du tjekke længden af strengen det bør være uændret, hvis det kun indeholder de char typer, du ønsker.
Code:
# t is the input string, ck is a variable to check the contents of t
t="thisisa555ctest"

ck=$( echo "$t" | tr -dc '[:alnum:]')
if [[ ${#t} -eq ${#ck} ]]; then
      echo "ok"
else
      echo "not ok"
      exit 1
fi
# t is all good chars at this point
# check length of t

if [[ ${#t} -gt 50 ]]; then
      echo "not ok too long"
fi
  #3 (permalink)  
Old 10-16-2007
tugger tugger is offline
Registreret Bruger
  
 

Join Date: oktober 2007
Stillinger: 9
Jim,

Tak for svaret. Har testet den kode, thi doesn t tillade mig at have rum i strengen. Any ideas?

Også hvad betyder det # forstås inden $ (# t)?

Tak
  #4 (permalink)  
Old 10-16-2007
tugger tugger is offline
Registreret Bruger
  
 

Join Date: oktober 2007
Stillinger: 9
Tror jeg har krakket det

Jeg bruger denne kode. De prøver jeg har gjort, synes at arbejde.

mens sandt
gøre
klar
echo "Indtast tekst: \ c"
læse t
sag $ t
+ ([az] | [Å] | [0-9] | [ '']))
echo test strengen er okay
brække
;;
*)
echo test string ikke okay
sove 2
;;
ESAC
gjort
Closed Thread

Bogmærker

Thread Tools Søg denne tråd
Søg denne tråd:

Avanceret søgning
Display Modes Bedøm denne tråd
Bedøm denne tråd:

Udstationering Regler
Du kan ikke post nye tråde
Du kan ikke post svar
Du kan ikke post vedhæftede filer
Du kan ikke redigere dine indlæg

BB-kode er
Smilies er
[IMG] koden er
HTML-koden er Slukket
Trackbacks er
Pingbacks er
Refbacks er




Alle tidspunkter er GMT -4. Den tid er nu 07:38 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Oversættelser Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX og Linux Forums Content Copyright © 1993-2009. Alle rettigheder Reserved.Ad Management ved RedTyger

Content Relevant webadresser ved vBSEO 3.2.0