String auslesehn und Sortieren

  • Hallo liebe Autoit Coder

    Ich wollte fragen wie man eine String zb:


    Ich wollte fragen wie mache ich das das Angezeigt wird wie oft die ip dadrin steht wie zb die 236.38.62.130
    Die ip steht ja 9 mal drin. Ich habe zwar ein weg gefunden aber der ist mehr umweg als abkürzung^^

  • ich weis blos ich brauche ja immer mindestens 1 ip nach der ich suche und dan wie oft die da ist
    momentan sieht mein script so aus

  • name22 hat es doch bereits gesagt: Nimm StringReplace(...)
    So hättest du es machen können:

    Spoiler anzeigen
    [autoit]

    #include <array.au3>

    [/autoit] [autoit][/autoit] [autoit]

    $sStringList = "182.157.114.242" & @CRlF & _
    "169.179.73.49" & @CRlF & _
    "236.67.207.123" & @CRlF & _
    "46.117.132.132" & @CRlF & _
    "37.27.128.42" & @CRlF & _
    "241.223.127.117" & @CRlF & _
    "172.159.20.53" & @CRlF & _
    "119.88.186.90" & @CRlF & _
    "37.35.210.27" & @CRlF & _
    "188.66.154.138" & @CRlF & _
    "91.86.175.30" & @CRlF & _
    "38.245.222.37" & @CRlF & _
    "224.118.160.33" & @CRlF & _
    "3.142.173.24" & @CRlF & _
    "180.200.125.26" & @CRlF & _
    "58.97.251.103" & @CRlF & _
    "21.215.134.249" & @CRlF & _
    "40.185.204.209" & @CRlF & _
    "199.125.238.203" & @CRlF & _
    "148.183.236.174" & @CRlF & _
    "134.169.32.4" & @CRlF & _
    "248.191.54.13" & @CRlF & _
    "124.128.1.128" & @CRlF & _
    "149.96.77.181" & @CRlF & _
    "21.238.195.165" & @CRlF & _
    "206.165.212.172" & @CRlF & _
    "186.248.144.36" & @CRlF & _
    "254.56.5.27" & @CRlF & _
    "161.46.79.124" & @CRlF & _
    "175.151.57.210" & @CRlF & _
    "44.211.187.238" & @CRlF & _
    "46.19.37.49" & @CRlF & _
    "86.218.54.126" & @CRlF & _
    "208.38.66.36" & @CRlF & _
    "78.100.31.238" & @CRlF & _
    "98.170.21.174" & @CRlF & _
    "94.176.222.207" & @CRlF & _
    "23.27.139.2" & @CRlF & _
    "253.210.223.41" & @CRlF & _
    "73.3.137.12" & @CRlF & _
    "48.230.204.186" & @CRlF & _
    "71.25.98.252" & @CRlF & _
    "71.25.98.252" & @CRlF & _
    "71.25.98.252" & @CRlF & _
    "71.25.98.252" & @CRlF & _
    "71.25.98.252" & @CRlF & _
    "71.25.98.252" & @CRlF & _
    "71.25.98.252" & @CRlF & _
    "71.25.98.252" & @CRlF & _
    "71.25.98.252" & @CRlF & _
    "71.25.98.252" & @CRlF & _
    "71.25.98.252" & @CRlF & _
    "121.27.159.167" & @CRlF & _
    "176.231.197.221" & @CRlF & _
    "226.108.162.198" & @CRlF & _
    "27.193.244.168" & @CRlF & _
    "40.87.89.196" & @CRlF & _
    "73.55.241.90" & @CRlF & _
    "229.103.133.222" & @CRlF & _
    "250.245.206.134" & @CRlF & _
    "181.83.64.200" & @CRlF & _
    "69.162.189.55" & @CRlF & _
    "130.16.81.94" & @CRlF & _
    "31.168.134.133" & @CRlF & _
    "138.33.25.7" & @CRlF & _
    "132.55.110.13" & @CRlF & _
    "72.52.137.87" & @CRlF & _
    "57.4.21.124" & @CRlF & _
    "170.21.50.24" & @CRlF & _
    "225.104.253.244" & @CRlF & _
    "16.73.228.9" & @CRlF & _
    "65.251.234.192" & @CRlF & _
    "31.135.77.147" & @CRlF & _
    "136.221.147.175" & @CRlF & _
    "170.213.172.226" & @CRlF & _
    "83.90.217.172" & @CRlF & _
    "3.128.99.42" & @CRlF & _
    "179.133.81.12" & @CRlF & _
    "54.49.134.121" & @CRlF & _
    "78.52.21.166" & @CRlF & _
    "15.201.90.27" & @CRlF & _
    "52.29.165.36" & @CRlF & _
    "9.176.11.74" & @CRlF & _
    "117.8.25.195" & @CRlF & _
    "129.165.193.108" & @CRlF & _
    "139.51.126.57" & @CRlF & _
    "249.206.118.202" & @CRlF & _
    "248.214.174.51" & @CRlF & _
    "153.220.49.57" & @CRlF & _
    "55.166.94.241" & @CRlF & _
    "144.166.17.167" & @CRlF & _
    "144.196.52.131" & @CRlF & _
    "231.83.158.17" & @CRlF & _
    "28.102.18.181" & @CRlF & _
    "236.38.62.130" & @CRlF & _
    "236.38.62.130" & @CRlF & _
    "236.38.62.130" & @CRlF & _
    "236.38.62.130" & @CRlF & _
    "236.38.62.130" & @CRlF & _
    "236.38.62.130" & @CRlF & _
    "236.38.62.130" & @CRlF & _
    "236.38.62.130" & @CRlF & _
    "236.38.62.130" & @CRlF & _
    "237.127.226.26" & @CRlF & _
    "241.17.241.238" & @CRlF & _
    "41.89.71.61" & @CRlF & _
    "179.91.204.214" & @CRlF & _
    "58.82.21.163" & @CRlF & _
    "20.218.149.252" & @CRlF & _
    "154.50.168.6" & @CRlF & _
    "44.66.142.183" & @CRlF & _
    "221.41.90.61" & @CRlF & _
    "115.56.219.119" & @CRlF & _
    "216.120.134.39" & @CRlF & _
    "210.230.53.108" & @CRlF & _
    "33.251.12.161" & @CRlF & _
    "230.82.136.156" & @CRlF & _
    "40.185.217.211" & @CRlF & _
    "54.42.206.98"

    [/autoit] [autoit][/autoit] [autoit]

    $sSearchString = "236.38.62.130"

    [/autoit] [autoit][/autoit] [autoit]

    StringReplace($sStringList, $sSearchString, "")

    [/autoit] [autoit][/autoit] [autoit]

    $iReplacements = @extended

    [/autoit] [autoit][/autoit] [autoit]

    MsgBox(0, "Replacements:", $iReplacements)

    [/autoit]

    Wer immer nur das tut, was er bereits kann - wird auch immer nur das bleiben, was er bereits ist!

  • Hi,
    ich hab hier noch eine Lösung. In Spalte 1 stehen die IP's und in Spalte 2, wie oft sie vorkommen.

    Spoiler anzeigen
    [autoit]

    #include <Array.au3>

    [/autoit] [autoit][/autoit] [autoit]

    ;in aFile stehen die IP's drinne
    ;ich lese diese aus der Textdatei aus
    $aFile = StringSplit(FileRead(@ScriptDir & "\IPs.txt"), @CRLF, 1)

    [/autoit] [autoit][/autoit] [autoit]

    Global $aCounts[$aFile[0] + 1] ;eine temporäre array für die zählung erstellen
    Global $iCount = 0

    [/autoit] [autoit][/autoit] [autoit]

    For $x = 1 To $aFile[0]
    If $aFile[$x] = "" Then ContinueLoop
    $aCounts[$x] = 1
    $iCount += 1
    For $i = $x + 1 To $aFile[0]
    If $aFile[$x] = $aFile[$i] Then
    $aCounts[$x] += 1
    $aFile[$i] = ""
    EndIf
    Next
    Next

    [/autoit] [autoit][/autoit] [autoit]

    Global $aOutput[$iCount + 1][2]
    $aOutput[0][0] = 1

    [/autoit] [autoit][/autoit] [autoit]

    For $x = 1 To $aFile[0]
    If $aFile[$x] = "" Then ContinueLoop
    $aOutput[$aOutput[0][0]][0] = $aFile[$x]
    $aOutput[$aOutput[0][0]][1] = $aCounts[$x]
    $aOutput[0][0] += 1
    Next

    [/autoit] [autoit][/autoit] [autoit]

    _ArrayDisplay($aOutput)

    [/autoit]