Sign in to follow this  
Followers 0
goldenix

[Solved] How to identify, if a string contains numbers?

4 posts in this topic

#1 ·  Posted (edited)

Hi

Say there are billion strings like:

$string1 = 'AD 123456 d 265 SFreg'

$string2= '3255'

$string3 = 'AAA 87654321 reggw 234 sr EE#!¤ '

etc..

I wold like to filter out numbers from the strings. But the sequence must contain at least 5 numbers in a row. Is it possible to do so?

From this example only $string1 and $string3 are good & output should be

12345

and

87654

Is there a way to identify numbers in the string ?

Edited by goldenix

My Projects:[list][*]Guide - ytube step by step tut for reading memory with autoitscript + samples[*]WinHide - tool to show hide windows, Skinned With GDI+[*]Virtualdub batch job list maker - Batch Process all files with same settings[*]Exp calc - Exp calculator for online games[*]Automated Microsoft SQL Server 2000 installer[*]Image sorter helper for IrfanView - 1 click opens img & move ur mouse to close opened img[/list]

Share this post


Link to post
Share on other sites



goldenix,

Welcome the wonderful world of Regular Expressions! :D

This works for me - I get the results you required:

#include <Array.au3>

Local $aLines[3] = ['AD 123456 d 265 SFreg', '3255', 'AAA 87654321 reggw 234 sr EE#!¤ ']

For $i = 0 To 2

    $aRet = StringRegExp($aLines[$i], "\s(\d{5})", 3)

    _ArrayDisplay($aRet, "Line " & $i)

Next

How about you? :)

M23

1 person likes this

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind._______My UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Share this post


Link to post
Share on other sites

#3 ·  Posted (edited)

Hi,

Try this:

$string1 = 'AD 123456 d 265 SFreg 23131121a'

$result = StringRegExp($string1, "\d{5,}\s{0,}", 3)
For $i = 0 To UBound($result) - 1
    MsgBox(0, "RegExp Test with Option 3 - " & $i, $result[$i])
Next
Edited by michaelslamet

Share this post


Link to post
Share on other sites

I was reading about RE & was even able to filter out strings that contain numbers, but how to filter them out, this was something I could not figure out.

so basically its the same as this, thank you. problem solved.

$aRet = StringRegExp($aLines[$i], "([0-9]{8})", 3)

My Projects:[list][*]Guide - ytube step by step tut for reading memory with autoitscript + samples[*]WinHide - tool to show hide windows, Skinned With GDI+[*]Virtualdub batch job list maker - Batch Process all files with same settings[*]Exp calc - Exp calculator for online games[*]Automated Microsoft SQL Server 2000 installer[*]Image sorter helper for IrfanView - 1 click opens img & move ur mouse to close opened img[/list]

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0