• 28-11-2022, 22:39:15
    #1
    1.1.1.1 / 255.255.255.255 arası bulacak regex rakamları nedir bilen varmı
    255.255.255.256 dahi kabul etmeyecek
    sadece 1.1.1.1 - 255.255.255.255 arası kabul eden bir regex lazım
  • 28-11-2022, 22:41:36
    #2
    ^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$
  • 28-11-2022, 22:42:38
    #3
    CihanAksoy adlı üyeden alıntı: mesajı görüntüle
    ^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$
    Bunlardan birini seçerek atabilirmisiniz rica etsem hocam
    bozuk çıkmakta
  • 28-11-2022, 22:44:31
    #4
    CihanAksoy adlı üyeden alıntı: mesajı görüntüle
    ^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$
    unexpected token `('
    bu hatayı verdi hocam, linux için
  • 28-11-2022, 22:47:55
    #5
    Tam kodu verirsen yardımcı olurum hocam
  • 28-11-2022, 22:53:51
    #6
    CihanAksoy adlı üyeden alıntı: mesajı görüntüle
    Tam kodu verirsen yardımcı olurum hocam
    test=$(printf "12.12.12.12")
    if [[ "$test" =~ regex ]]
    ....
    oradaki 12.12.12.12 değişken
    999.999.999.999 denk gelebilir, onu if else ile atlayacağım
  • 29-11-2022, 00:37:08
    #7
    #!/bin/bash
    
    ip=${1:-1.2.3.255}
    
    ipvalid() {
      # Set up local variables
      local ip=${1:-NO_IP_PROVIDED}
      local IFS=.; local -a a=($ip)
      # Start with a regex format test
      [[ $ip =~ ^[0-9]+(\.[0-9]+){3}$ ]] || return 1
      # Test values of quads
      local quad
      for quad in {0..3}; do
        [[ "${a[$quad]}" -gt 255 ]] && return 1
      done
      return 0
    }
    
    if ipvalid "$ip"; then
      echo "success ($ip)"
      exit 0
    else
      echo "fail ($ip)"
      exit 1
    fi
    ip validasyonu içi şu şekilde birşey kullanabilirsiniz