ಎಕ್ಸೆಲ್‌ನಲ್ಲಿ ಸ್ಟ್ರಿಂಗ್‌ಗಳನ್ನು ಹೊರತೆಗೆಯಲು ರೆಜೆಕ್ಸ್ (ಒಂದು ಅಥವಾ ಎಲ್ಲಾ ಹೊಂದಾಣಿಕೆಗಳು)

  • ಇದನ್ನು ಹಂಚು
Michael Brown

ಪರಿವಿಡಿ

ಈ ಟ್ಯುಟೋರಿಯಲ್ ನಲ್ಲಿ, ನಿರ್ದಿಷ್ಟ ನಮೂನೆಗೆ ಹೊಂದಿಕೆಯಾಗುವ ಸಬ್‌ಸ್ಟ್ರಿಂಗ್‌ಗಳನ್ನು ಹುಡುಕಲು ಮತ್ತು ಹೊರತೆಗೆಯಲು ಎಕ್ಸೆಲ್‌ನಲ್ಲಿ ನಿಯಮಿತ ಅಭಿವ್ಯಕ್ತಿಗಳನ್ನು ಹೇಗೆ ಬಳಸುವುದು ಎಂಬುದನ್ನು ನೀವು ಕಲಿಯುವಿರಿ.

ಮೈಕ್ರೋಸಾಫ್ಟ್ ಎಕ್ಸೆಲ್ ಪಠ್ಯವನ್ನು ಹೊರತೆಗೆಯಲು ಹಲವಾರು ಕಾರ್ಯಗಳನ್ನು ಒದಗಿಸುತ್ತದೆ ಜೀವಕೋಶಗಳಿಂದ. ಆ ಕಾರ್ಯಗಳು ನಿಮ್ಮ ವರ್ಕ್‌ಶೀಟ್‌ಗಳಲ್ಲಿ ಹೆಚ್ಚಿನ ಸ್ಟ್ರಿಂಗ್ ಹೊರತೆಗೆಯುವಿಕೆ ಸವಾಲುಗಳನ್ನು ನಿಭಾಯಿಸಬಹುದು. ಹೆಚ್ಚು, ಆದರೆ ಎಲ್ಲಾ ಅಲ್ಲ. ಪಠ್ಯ ಕಾರ್ಯಗಳು ಮುಗ್ಗರಿಸಿದಾಗ, ನಿಯಮಿತ ಅಭಿವ್ಯಕ್ತಿಗಳು ರಕ್ಷಣೆಗೆ ಬರುತ್ತವೆ. ನಿರೀಕ್ಷಿಸಿ... Excel ಯಾವುದೇ RegEx ಕಾರ್ಯಗಳನ್ನು ಹೊಂದಿಲ್ಲ! ನಿಜ, ಯಾವುದೇ ಅಂತರ್ಗತ ಕಾರ್ಯಗಳಿಲ್ಲ. ಆದರೆ ನಿಮ್ಮದೇ ಆದದನ್ನು ಬಳಸುವುದರಿಂದ ನಿಮ್ಮನ್ನು ತಡೆಯುವ ಯಾವುದೂ ಇಲ್ಲ :)

    ಎಕ್ಸೆಲ್ VBA Regex ಫಂಕ್ಷನ್ ಸ್ಟ್ರಿಂಗ್‌ಗಳನ್ನು ಹೊರತೆಗೆಯಲು

    ನಿಮ್ಮ Excel ಗೆ ಕಸ್ಟಮ್ Regex Extract ಕಾರ್ಯವನ್ನು ಸೇರಿಸಲು, ಕೆಳಗಿನ ಕೋಡ್ ಅನ್ನು VBA ಸಂಪಾದಕದಲ್ಲಿ ಅಂಟಿಸಿ. VBA ನಲ್ಲಿ ನಿಯಮಿತ ಅಭಿವ್ಯಕ್ತಿಗಳನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲು, ನಾವು ಅಂತರ್ನಿರ್ಮಿತ Microsoft RegExp ಆಬ್ಜೆಕ್ಟ್ ಅನ್ನು ಬಳಸುತ್ತಿದ್ದೇವೆ.

    ಸಾರ್ವಜನಿಕ ಕಾರ್ಯ RegExpExtract(ಪಠ್ಯವಾಗಿ ಸ್ಟ್ರಿಂಗ್, ನಮೂನೆಯಂತೆ ಸ್ಟ್ರಿಂಗ್, ಐಚ್ಛಿಕ instance_num ಇಂಟೀಜರ್ ಆಗಿ = 0, ಐಚ್ಛಿಕ ಪಂದ್ಯ_ಕೇಸ್ ಬೂಲಿಯನ್ = ಟ್ರೂ ) ಮಂದ text_matches() ಸ್ಟ್ರಿಂಗ್ ಡಿಮ್ ಆಗಿ matches_index ಪೂರ್ಣಾಂಕದಂತೆ ದೋಷ GoTo ErrHandl RegExpExtract = "" ಸೆಟ್ regex = CreateObject ( "VBScript.RegExp" ) regex.pattern = ಪ್ಯಾಟರ್ನ್ regex.Global = True regex =.MultiLe ನಂತರ ಮ್ಯಾಚ್ ರಿಜೆಕ್ಸ್ =.MultiLe. ಇಗ್ನೋರ್ಕೇಸ್ = ತಪ್ಪು ಬೇರೆ regex.ignorecase = ನಿಜವಾದ ಅಂತ್ಯ ಹೊಂದಿಸಿದರೆ = regex. Execute(text) 0 < ಹೊಂದಾಣಿಕೆಗಳು. ಎಣಿಕೆ ನಂತರ (0 = instance_num) ನಂತರ ReDim text_matches(matches. Count - 1, 0) matches_index = 0 ಗೆVBA RegExp, ಹೆಚ್ಚು ಶಕ್ತಿಯುತವಾದ .NET Regex ಕಾರ್ಯಗಳನ್ನು ಚರ್ಚಿಸುವ ಮುಂದಿನ ಭಾಗವನ್ನು ಓದಲು ನಾನು ನಿಮ್ಮನ್ನು ಪ್ರೋತ್ಸಾಹಿಸುತ್ತೇನೆ.

    Excel ನಲ್ಲಿ ಪಠ್ಯವನ್ನು ಹೊರತೆಗೆಯಲು ಕಸ್ಟಮ್ .NET ಆಧಾರಿತ Regex ಕಾರ್ಯ

    VBA RegExp ಕಾರ್ಯಗಳಿಗಿಂತ ಭಿನ್ನವಾಗಿ ಯಾವುದೇ ಎಕ್ಸೆಲ್ ಬಳಕೆದಾರರಿಂದ ಬರೆಯಬಹುದು, .NET RegEx ಎಂಬುದು ಡೆವಲಪರ್‌ನ ಕ್ಷೇತ್ರವಾಗಿದೆ. ಮೈಕ್ರೋಸಾಫ್ಟ್ .NET ಫ್ರೇಮ್‌ವರ್ಕ್ ಪರ್ಲ್ 5 ನೊಂದಿಗೆ ಹೊಂದಿಕೆಯಾಗುವ ಪೂರ್ಣ-ವೈಶಿಷ್ಟ್ಯದ ನಿಯಮಿತ ಅಭಿವ್ಯಕ್ತಿ ಸಿಂಟ್ಯಾಕ್ಸ್ ಅನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ. ಅಂತಹ ಕಾರ್ಯಗಳನ್ನು ಹೇಗೆ ಬರೆಯಬೇಕೆಂದು ಈ ಲೇಖನವು ನಿಮಗೆ ಕಲಿಸುವುದಿಲ್ಲ (ನಾನು ಪ್ರೋಗ್ರಾಮರ್ ಅಲ್ಲ ಮತ್ತು ಅದನ್ನು ಹೇಗೆ ಮಾಡಬೇಕೆಂಬುದರ ಬಗ್ಗೆ ಸ್ವಲ್ಪವೂ ಕಲ್ಪನೆ ಇಲ್ಲ :)

    ಸ್ಟ್ಯಾಂಡರ್ಡ್ .NET RegEx ಎಂಜಿನ್‌ನಿಂದ ಸಂಸ್ಕರಿಸಿದ ನಾಲ್ಕು ಶಕ್ತಿಶಾಲಿ ಕಾರ್ಯಗಳನ್ನು ಈಗಾಗಲೇ ನಮ್ಮ ಡೆವಲಪರ್‌ಗಳು ಬರೆದಿದ್ದಾರೆ ಮತ್ತು ಅಲ್ಟಿಮೇಟ್ ಸೂಟ್‌ನಲ್ಲಿ ಸೇರಿಸಲಾಗಿದೆ. ಕೆಳಗೆ, Excel ನಲ್ಲಿ ಪಠ್ಯವನ್ನು ಹೊರತೆಗೆಯಲು ವಿಶೇಷವಾಗಿ ವಿನ್ಯಾಸಗೊಳಿಸಲಾದ ಕಾರ್ಯದ ಕೆಲವು ಪ್ರಾಯೋಗಿಕ ಬಳಕೆಗಳನ್ನು ನಾವು ಪ್ರದರ್ಶಿಸುತ್ತೇವೆ.

    ಸಲಹೆ. .NET Regex ಸಿಂಟ್ಯಾಕ್ಸ್ ಕುರಿತು ಮಾಹಿತಿಗಾಗಿ, ದಯವಿಟ್ಟು .NET ನಿಯಮಿತ ಅಭಿವ್ಯಕ್ತಿ ಭಾಷೆಯನ್ನು ಉಲ್ಲೇಖಿಸಿ.

    ಸಾಮಾನ್ಯ ಅಭಿವ್ಯಕ್ತಿಗಳನ್ನು ಬಳಸಿಕೊಂಡು ಎಕ್ಸೆಲ್‌ನಲ್ಲಿ ಕುಟುಕುಗಳನ್ನು ಹೇಗೆ ಹೊರತೆಗೆಯುವುದು

    ನೀವು ಅಲ್ಟಿಮೇಟ್ ಸೂಟ್‌ನ ಇತ್ತೀಚಿನ ಆವೃತ್ತಿಯನ್ನು ಸ್ಥಾಪಿಸಿರುವಿರಿ ಎಂದು ಭಾವಿಸಿದರೆ, ನಿಯಮಿತ ಅಭಿವ್ಯಕ್ತಿಗಳನ್ನು ಬಳಸಿಕೊಂಡು ಪಠ್ಯವನ್ನು ಹೊರತೆಗೆಯುವುದು ಈ ಎರಡು ಹಂತಗಳಿಗೆ ಇಳಿಯುತ್ತದೆ:

    1. Ablebits ಡೇಟಾ ಟ್ಯಾಬ್‌ನಲ್ಲಿ, Text ಗುಂಪಿನಲ್ಲಿ, Regex Tools ಅನ್ನು ಕ್ಲಿಕ್ ಮಾಡಿ.
    2. Regex Tools ಫಲಕದಲ್ಲಿ, ಮೂಲ ಡೇಟಾವನ್ನು ಆಯ್ಕೆಮಾಡಿ, ನಿಮ್ಮ Regex ಮಾದರಿಯನ್ನು ನಮೂದಿಸಿ ಮತ್ತು Extract ಆಯ್ಕೆಯನ್ನು ಆರಿಸಿ. ಫಲಿತಾಂಶವನ್ನು ಕಸ್ಟಮ್ ಫಂಕ್ಷನ್ ಆಗಿ ಪಡೆಯಲು, ಮೌಲ್ಯವಲ್ಲ, ಸೂತ್ರವಾಗಿ ಸೇರಿಸಿ ಚೆಕ್ ಅನ್ನು ಆಯ್ಕೆ ಮಾಡಿಬಾಕ್ಸ್. ಮುಗಿದ ನಂತರ, ಹೊರತೆಗೆಯಿರಿ ಬಟನ್ ಅನ್ನು ಕ್ಲಿಕ್ ಮಾಡಿ.

    ಫಲಿತಾಂಶಗಳು ನಿಮ್ಮ ಮೂಲ ಡೇಟಾದ ಬಲಭಾಗದಲ್ಲಿರುವ ಹೊಸ ಕಾಲಮ್‌ನಲ್ಲಿ ಗೋಚರಿಸುತ್ತವೆ:

    AblebitsRegexExtract ಸಿಂಟ್ಯಾಕ್ಸ್

    ನಮ್ಮ ಕಸ್ಟಮ್ ಕಾರ್ಯವು ಈ ಕೆಳಗಿನ ಸಿಂಟ್ಯಾಕ್ಸ್ ಅನ್ನು ಹೊಂದಿದೆ:

    AblebitsRegexExtract(reference, regular_expression)

    ಎಲ್ಲಿ:

    • ಉಲ್ಲೇಖ (ಅಗತ್ಯವಿದೆ) - ಮೂಲ ಸ್ಟ್ರಿಂಗ್ ಹೊಂದಿರುವ ಸೆಲ್‌ಗೆ ಒಂದು ಉಲ್ಲೇಖ.
    • Regular_expression (ಅಗತ್ಯವಿದೆ) - ಹೊಂದಿಕೆಯಾಗಬೇಕಾದ ರೆಜೆಕ್ಸ್ ಮಾದರಿ.

    ಪ್ರಮುಖ ಟಿಪ್ಪಣಿ! ಎಕ್ಸೆಲ್‌ಗಾಗಿ ಅಲ್ಟಿಮೇಟ್ ಸೂಟ್ ಅನ್ನು ಸ್ಥಾಪಿಸಿರುವ ಯಂತ್ರಗಳಲ್ಲಿ ಮಾತ್ರ ಕಾರ್ಯವು ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ.

    ಬಳಕೆಯ ಟಿಪ್ಪಣಿಗಳು

    ನಿಮ್ಮ ಕಲಿಕೆಯ ರೇಖೆಯನ್ನು ಸುಗಮಗೊಳಿಸಲು ಮತ್ತು ನಿಮ್ಮ ಅನುಭವವನ್ನು ಹೆಚ್ಚು ಆನಂದದಾಯಕವಾಗಿಸಲು, ದಯವಿಟ್ಟು ಈ ಅಂಶಗಳಿಗೆ ಗಮನ ಕೊಡಿ:

    1. ಸೂತ್ರವನ್ನು ರಚಿಸಲು, ನೀವು ನಮ್ಮ Regex ಪರಿಕರಗಳು , ಅಥವಾ Excel ನ ಕಾರ್ಯವನ್ನು ಸೇರಿಸಿ ಸಂವಾದವನ್ನು ಬಳಸಬಹುದು ಅಥವಾ ಸೆಲ್‌ನಲ್ಲಿ ಪೂರ್ಣ ಕಾರ್ಯದ ಹೆಸರನ್ನು ಟೈಪ್ ಮಾಡಬಹುದು. ಒಮ್ಮೆ ಸೂತ್ರವನ್ನು ಸೇರಿಸಿದ ನಂತರ, ನೀವು ಯಾವುದೇ ಸ್ಥಳೀಯ ಸೂತ್ರದಂತೆ ಅದನ್ನು ನಿರ್ವಹಿಸಬಹುದು (ಸಂಪಾದಿಸಿ, ನಕಲಿಸಿ ಅಥವಾ ಸರಿಸಿ).
    2. ನೀವು Regex Tools ಪೇನ್‌ನಲ್ಲಿ ನಮೂದಿಸಿದ ಮಾದರಿಯು 2 ನೇ ಆರ್ಗ್ಯುಮೆಂಟ್‌ಗೆ ಹೋಗುತ್ತದೆ. ನಿಯಮಿತ ಅಭಿವ್ಯಕ್ತಿಯನ್ನು ಪ್ರತ್ಯೇಕ ಕೋಶದಲ್ಲಿ ಇರಿಸಲು ಸಹ ಸಾಧ್ಯವಿದೆ. ಈ ಸಂದರ್ಭದಲ್ಲಿ, 2 ನೇ ಆರ್ಗ್ಯುಮೆಂಟ್‌ಗಾಗಿ ಸೆಲ್ ಉಲ್ಲೇಖವನ್ನು ಬಳಸಿ.
    3. ಫಂಕ್ಷನ್ ಮೊದಲು ಕಂಡುಬಂದ ಹೊಂದಾಣಿಕೆ ಅನ್ನು ಹೊರತೆಗೆಯುತ್ತದೆ.
    4. ಡೀಫಾಲ್ಟ್ ಆಗಿ, ಕಾರ್ಯವು ಕೇಸ್ ಆಗಿದೆ -ಸೂಕ್ಷ್ಮ . ಕೇಸ್-ಸೆನ್ಸಿಟಿವ್ ಹೊಂದಾಣಿಕೆಗಾಗಿ, (?i) ಮಾದರಿಯನ್ನು ಬಳಸಿ.
    5. ಹೊಂದಾಣಿಕೆ ಕಂಡುಬಂದಿಲ್ಲವಾದರೆ, #N/A ದೋಷಹಿಂತಿರುಗಿಸಲಾಗಿದೆ.

    ಎರಡು ಅಕ್ಷರಗಳ ನಡುವೆ ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು ಹೊರತೆಗೆಯಲು Regex

    ಎರಡು ಅಕ್ಷರಗಳ ನಡುವೆ ಪಠ್ಯವನ್ನು ಪಡೆಯಲು, ನೀವು ಕ್ಯಾಪ್ಚರ್ ಮಾಡುವ ಗುಂಪು ಅಥವಾ ಲುಕ್-ಅರೌಂಡ್‌ಗಳನ್ನು ಬಳಸಬಹುದು.

    ನಾವು ನೀವು ಬ್ರಾಕೆಟ್‌ಗಳ ನಡುವೆ ಪಠ್ಯವನ್ನು ಹೊರತೆಗೆಯಲು ನೋಡುತ್ತಿದ್ದೀರಿ ಎಂದು ಹೇಳಿ. ಗುಂಪನ್ನು ಸೆರೆಹಿಡಿಯುವುದು ಸುಲಭವಾದ ಮಾರ್ಗವಾಗಿದೆ.

    ಪ್ಯಾಟರ್ನ್ 1 : \[(.*?)\]

    ಹಿಂದೆ ಧನಾತ್ಮಕ ನೋಟ ಮತ್ತು ಲುಕ್‌ಎಡ್‌ನೊಂದಿಗೆ, ಫಲಿತಾಂಶವು ನಿಖರವಾಗಿ ಇರುತ್ತದೆ ಅದೇ.

    ಪ್ಯಾಟರ್ನ್ 2 : (?<=\[)(.*?)(?=\])

    ದಯವಿಟ್ಟು ನಮ್ಮ ಸೆರೆಹಿಡಿಯುವ ಗುಂಪಿಗೆ ಗಮನ ಕೊಡಿ (.*?) ಎರಡು ಬ್ರಾಕೆಟ್‌ಗಳ ನಡುವಿನ ಪಠ್ಯಕ್ಕಾಗಿ ಆಲಸ್ಯ ಹುಡುಕಾಟ ಅನ್ನು ನಿರ್ವಹಿಸುತ್ತದೆ - ಮೊದಲಿನಿಂದ [ ಮೊದಲಿನಿಂದ ]. ಪ್ರಶ್ನಾರ್ಥಕ ಚಿಹ್ನೆ (.*) ಇಲ್ಲದೆಯೇ ಸೆರೆಹಿಡಿಯುವ ಗುಂಪು ದುರಾಸೆಯ ಹುಡುಕಾಟವನ್ನು ಮಾಡುತ್ತದೆ ಮತ್ತು ಮೊದಲಿನಿಂದ [ಕೊನೆಯ] ವರೆಗೆ ಎಲ್ಲವನ್ನೂ ಸೆರೆಹಿಡಿಯುತ್ತದೆ.

    A2 ನಲ್ಲಿನ ಮಾದರಿಯೊಂದಿಗೆ, ಸೂತ್ರವು ಹೀಗೆ ಹೋಗುತ್ತದೆ. ಅನುಸರಿಸುತ್ತದೆ:

    =AblebitsRegexExtract(A5, $A$2)

    ಎಲ್ಲಾ ಹೊಂದಾಣಿಕೆಗಳನ್ನು ಹೇಗೆ ಪಡೆಯುವುದು

    ಈಗಾಗಲೇ ಹೇಳಿದಂತೆ, AblebitsRegexExtract ಕಾರ್ಯವು ಕೇವಲ ಒಂದು ಹೊಂದಾಣಿಕೆಯನ್ನು ಮಾತ್ರ ಹೊರತೆಗೆಯಬಹುದು. ಎಲ್ಲಾ ಹೊಂದಾಣಿಕೆಗಳನ್ನು ಪಡೆಯಲು, ನಾವು ಮೊದಲು ಚರ್ಚಿಸಿದ VBA ಕಾರ್ಯವನ್ನು ನೀವು ಬಳಸಬಹುದು. ಆದಾಗ್ಯೂ, ಒಂದು ಎಚ್ಚರಿಕೆ ಇದೆ - VBA RegExp ಗುಂಪುಗಳನ್ನು ಸೆರೆಹಿಡಿಯುವುದನ್ನು ಬೆಂಬಲಿಸುವುದಿಲ್ಲ, ಆದ್ದರಿಂದ ಮೇಲಿನ ನಮೂನೆಯು "ಗಡಿ" ಅಕ್ಷರಗಳನ್ನು ಸಹ ಹಿಂತಿರುಗಿಸುತ್ತದೆ, ನಮ್ಮ ಸಂದರ್ಭದಲ್ಲಿ ಬ್ರಾಕೆಟ್‌ಗಳು.

    =TEXTJOIN(" ", TRUE, RegExpExtract(A5, $A$2))

    ಮುಕ್ತಾಯಿಸಲು ಬ್ರಾಕೆಟ್‌ಗಳಲ್ಲಿ, ಈ ಸೂತ್ರವನ್ನು ಬಳಸಿಕೊಂಡು ಅವುಗಳನ್ನು ಖಾಲಿ ತಂತಿಗಳೊಂದಿಗೆ ("") ಬದಲಿಸಿ:

    =SUBSTITUTE(SUBSTITUTE(TEXTJOIN(", ", TRUE, RegExpExtract(A5, $A$2)), "]", ""),"[","")

    ಉತ್ತಮ ಓದುವಿಕೆಗಾಗಿ, ನಾವು ಡಿಲಿಮಿಟರ್‌ಗಾಗಿ ಅಲ್ಪವಿರಾಮವನ್ನು ಬಳಸುತ್ತಿದ್ದೇವೆ.

    ಎರಡು ತಂತಿಗಳ ನಡುವೆ ಪಠ್ಯವನ್ನು ಹೊರತೆಗೆಯಲು Regex

    ನಾವು ಕೆಲಸ ಮಾಡಿದ ವಿಧಾನಅದನ್ನು ಅಕ್ಷರಶಃ ಅರ್ಥೈಸಿಕೊಳ್ಳಿ).

  • (?:[A-Za-z\d\-\.]{2,255}\.)? - ಯಾವುದಾದರೂ (ನಮ್ಮ ಮಾದರಿ URL ನಲ್ಲಿ ಮೊಬೈಲ್ ) ಮೂರನೇ ಹಂತದ, ನಾಲ್ಕನೇ ಹಂತದ, ಇತ್ಯಾದಿ ಡೊಮೇನ್‌ಗಳನ್ನು ಗುರುತಿಸಲು ಕ್ಯಾಪ್ಚರ್ ಮಾಡದ ಗುಂಪು. ಮೊದಲ ಮಾದರಿಯಲ್ಲಿ, ಅಂತಹ ಎಲ್ಲಾ ಸಬ್‌ಡೊಮೇನ್‌ಗಳನ್ನು ಹೊರತೆಗೆಯುವಿಕೆಗೆ ಸೇರಿಸಲು ದೊಡ್ಡ ಕ್ಯಾಪ್ಚರಿಂಗ್ ಗುಂಪಿನೊಳಗೆ ಇರಿಸಲಾಗುತ್ತದೆ. ಒಂದು ಉಪಡೊಮೇನ್ 2 ರಿಂದ 255 ಅಕ್ಷರಗಳವರೆಗೆ ಇರಬಹುದು, ಆದ್ದರಿಂದ {2,255} ಕ್ವಾಂಟಿಫೈಯರ್.
  • ([A-Za-z\d\-]{1,63}\.[A-Za-z] {2,24}) - ಎರಡನೇ ಹಂತದ ಡೊಮೇನ್ ( ablebits ) ಮತ್ತು ಉನ್ನತ ಮಟ್ಟದ ಡೊಮೇನ್ ( com ) ಅನ್ನು ಹೊರತೆಗೆಯಲು ಗುಂಪನ್ನು ಸೆರೆಹಿಡಿಯುವುದು. ಎರಡನೇ ಹಂತದ ಡೊಮೇನ್‌ನ ಗರಿಷ್ಠ ಉದ್ದವು 63 ಅಕ್ಷರಗಳು. ಪ್ರಸ್ತುತ ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಅತಿ ಉದ್ದದ ಉನ್ನತ ಮಟ್ಟದ ಡೊಮೇನ್ 24 ಅಕ್ಷರಗಳನ್ನು ಒಳಗೊಂಡಿದೆ.
  • A2 ನಲ್ಲಿ ಯಾವ ನಿಯಮಿತ ಅಭಿವ್ಯಕ್ತಿ ನಮೂದಿಸಲಾಗಿದೆ ಎಂಬುದರ ಆಧಾರದ ಮೇಲೆ, ಕೆಳಗಿನ ಸೂತ್ರವು ವಿಭಿನ್ನ ಫಲಿತಾಂಶಗಳನ್ನು ನೀಡುತ್ತದೆ:

    =AblebitsRegexExtract(A5, $A$2)

    Regex ಎಲ್ಲಾ ಉಪಡೊಮೇನ್‌ಗಳೊಂದಿಗೆ ಪೂರ್ಣ ಡೊಮೇನ್ ಹೆಸರನ್ನು ಹೊರತೆಗೆಯಲು:

    Regex ಉಪಡೊಮೇನ್‌ಗಳಿಲ್ಲದೆ ಎರಡನೇ ಹಂತದ ಡೊಮೇನ್ ಅನ್ನು ಹೊರತೆಗೆಯಲು:

    ಸಾಮಾನ್ಯ ಅಭಿವ್ಯಕ್ತಿಗಳನ್ನು ಬಳಸಿಕೊಂಡು Excel ನಲ್ಲಿ ಪಠ್ಯದ ಭಾಗಗಳನ್ನು ಹೊರತೆಗೆಯುವುದು ಹೇಗೆ. ನಾನು ಓದಿದ್ದಕ್ಕಾಗಿ ಧನ್ಯವಾದಗಳು ಮತ್ತು ಮುಂದಿನ ವಾರ ನಮ್ಮ ಬ್ಲಾಗ್‌ನಲ್ಲಿ ನಿಮ್ಮನ್ನು ನೋಡಲು ಎದುರು ನೋಡುತ್ತಿದ್ದೇನೆ!

    ಲಭ್ಯವಿರುವ ಡೌನ್‌ಲೋಡ್‌ಗಳು

    Excel Regex Extract ಉದಾಹರಣೆಗಳು (.xlsm ಫೈಲ್)

    ಅಲ್ಟಿಮೇಟ್ ಸೂಟ್ ಪ್ರಯೋಗ ಆವೃತ್ತಿ (.exe ಫೈಲ್)

    \b(0?[0-9]matches.count - 1 text_matches(matches_index, 0) = matches.Item(matches_index) ಮುಂದಿನ matches_index RegExpExtract = text_matches ಬೇರೆ RegExpExtract = matches.Item(instance_num - 1) End if End If RegExpExtract

    ನೀವು VBA ಯೊಂದಿಗೆ ಸ್ವಲ್ಪ ಅನುಭವವನ್ನು ಹೊಂದಿದ್ದರೆ, ಹಂತ-ಹಂತದ ಬಳಕೆದಾರ ಮಾರ್ಗದರ್ಶಿ ಸಹಾಯಕವಾಗಿದೆಯೆಂದು ಸಾಬೀತುಪಡಿಸಬಹುದು: Excel ನಲ್ಲಿ VBA ಕೋಡ್ ಅನ್ನು ಹೇಗೆ ಸೇರಿಸುವುದು.

    ಗಮನಿಸಿ. ಕಾರ್ಯವು ಕಾರ್ಯನಿರ್ವಹಿಸಲು, ನಿಮ್ಮ ಫೈಲ್ ಅನ್ನು ಮ್ಯಾಕ್ರೋ-ಸಕ್ರಿಯಗೊಳಿಸಿದ ವರ್ಕ್‌ಬುಕ್ (.xlsm) ಆಗಿ ಉಳಿಸಲು ಮರೆಯದಿರಿ.

    RegExpExtract ಸಿಂಟ್ಯಾಕ್ಸ್

    RegExpExtract ಕಾರ್ಯವು ನಿಯಮಿತ ಅಭಿವ್ಯಕ್ತಿಗೆ ಹೊಂದಿಕೆಯಾಗುವ ಮೌಲ್ಯಗಳಿಗಾಗಿ ಇನ್‌ಪುಟ್ ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು ಹುಡುಕುತ್ತದೆ ಮತ್ತು ಒಂದು ಅಥವಾ ಎಲ್ಲಾ ಹೊಂದಾಣಿಕೆಗಳನ್ನು ಹೊರತೆಗೆಯುತ್ತದೆ.

    ಕಾರ್ಯವು ಈ ಕೆಳಗಿನ ಸಿಂಟ್ಯಾಕ್ಸ್ ಅನ್ನು ಹೊಂದಿದೆ :

    RegExpExtract(ಪಠ್ಯ, ನಮೂನೆ, [instance_num], [match_case])

    ಎಲ್ಲಿ:

    • ಪಠ್ಯ (ಅಗತ್ಯವಿದೆ) - ಹುಡುಕಲು ಪಠ್ಯ ಸ್ಟ್ರಿಂಗ್.
    • ಪ್ಯಾಟರ್ನ್ (ಅಗತ್ಯವಿದೆ) - ಹೊಂದಿಸಲು ನಿಯಮಿತ ಅಭಿವ್ಯಕ್ತಿ. ಸೂತ್ರದಲ್ಲಿ ನೇರವಾಗಿ ಒದಗಿಸಿದಾಗ, ಮಾದರಿಯನ್ನು ಎರಡು ಉದ್ಧರಣ ಚಿಹ್ನೆಗಳಲ್ಲಿ ಲಗತ್ತಿಸಬೇಕು.
    • Instance_num (ಐಚ್ಛಿಕ) - ಯಾವ ನಿದರ್ಶನವನ್ನು ಹೊರತೆಗೆಯಬೇಕು ಎಂಬುದನ್ನು ಸೂಚಿಸುವ ಸರಣಿ ಸಂಖ್ಯೆ. ಬಿಟ್ಟುಬಿಟ್ಟರೆ, ಕಂಡುಬರುವ ಎಲ್ಲಾ ಹೊಂದಾಣಿಕೆಗಳನ್ನು ಹಿಂತಿರುಗಿಸುತ್ತದೆ (ಡೀಫಾಲ್ಟ್).
    • Match_case (ಐಚ್ಛಿಕ) - ಪಠ್ಯ ಪ್ರಕರಣವನ್ನು ಹೊಂದಿಸಬೇಕೆ ಅಥವಾ ನಿರ್ಲಕ್ಷಿಸಬೇಕೆ ಎಂಬುದನ್ನು ವಿವರಿಸುತ್ತದೆ. TRUE ಅಥವಾ ಬಿಟ್ಟುಬಿಟ್ಟರೆ (ಡೀಫಾಲ್ಟ್), ಕೇಸ್-ಸೆನ್ಸಿಟಿವ್ ಹೊಂದಾಣಿಕೆಯನ್ನು ನಿರ್ವಹಿಸಲಾಗುತ್ತದೆ; ತಪ್ಪಾಗಿದ್ದರೆ - ಕೇಸ್-ಇನ್ಸೆನ್ಸಿಟಿವ್.

    ಎಕ್ಸೆಲ್ 365, ಎಕ್ಸೆಲ್ 2021, ಎಕ್ಸೆಲ್ ನ ಎಲ್ಲಾ ಆವೃತ್ತಿಗಳಲ್ಲಿ ಕಾರ್ಯವು ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ2019, ಎಕ್ಸೆಲ್ 2016, ಎಕ್ಸೆಲ್ 2013 ಮತ್ತು ಎಕ್ಸೆಲ್ 2010.

    RegExpExtract ಕುರಿತು ನೀವು ತಿಳಿದುಕೊಳ್ಳಬೇಕಾದ 4 ವಿಷಯಗಳು

    ನಿಮ್ಮ ಎಕ್ಸೆಲ್‌ನಲ್ಲಿ ಕಾರ್ಯವನ್ನು ಪರಿಣಾಮಕಾರಿಯಾಗಿ ಬಳಸಲು, ಗಮನಿಸಬೇಕಾದ ಕೆಲವು ಪ್ರಮುಖ ವಿಷಯಗಳಿವೆ:

    1. ಪೂರ್ವನಿಯೋಜಿತವಾಗಿ, ಫಂಕ್ಷನ್ ಎಲ್ಲಾ ಹೊಂದಾಣಿಕೆಗಳನ್ನು ಈ ಉದಾಹರಣೆಯಲ್ಲಿ ತೋರಿಸಿರುವಂತೆ ನೆರೆಯ ಸೆಲ್‌ಗಳಿಗೆ ಹಿಂತಿರುಗಿಸುತ್ತದೆ. ನಿರ್ದಿಷ್ಟ ಸಂಭವವನ್ನು ಪಡೆಯಲು, instance_num ಆರ್ಗ್ಯುಮೆಂಟ್‌ಗೆ ಅನುಗುಣವಾದ ಸಂಖ್ಯೆಯನ್ನು ಒದಗಿಸಿ.
    2. ಡೀಫಾಲ್ಟ್ ಆಗಿ, ಕಾರ್ಯವು ಕೇಸ್-ಸೆನ್ಸಿಟಿವ್ ಆಗಿದೆ. ಕೇಸ್-ಸೆನ್ಸಿಟಿವ್ ಹೊಂದಾಣಿಕೆಗಾಗಿ, match_case ಆರ್ಗ್ಯುಮೆಂಟ್ ಅನ್ನು FALSE ಗೆ ಹೊಂದಿಸಿ. VBA ಮಿತಿಗಳ ಕಾರಣದಿಂದಾಗಿ, ಕೇಸ್-ಇನ್ಸೆನ್ಸಿಟಿವ್ ಕನ್ಸ್ಟ್ರಕ್ಟ್ (?i) ಕಾರ್ಯನಿರ್ವಹಿಸುವುದಿಲ್ಲ.
    3. ಮಾನ್ಯವಾದ ಮಾದರಿಯು ಕಂಡುಬಂದಿಲ್ಲವಾದರೆ , ಕಾರ್ಯವು ಏನನ್ನೂ ಹಿಂತಿರುಗಿಸುವುದಿಲ್ಲ (ಖಾಲಿ ಸ್ಟ್ರಿಂಗ್).
    4. ಮಾದರಿಯು ಅಮಾನ್ಯವಾಗಿದ್ದರೆ , #VALUE! ದೋಷ ಸಂಭವಿಸುತ್ತದೆ.

    ನಿಮ್ಮ ವರ್ಕ್‌ಶೀಟ್‌ಗಳಲ್ಲಿ ನೀವು ಈ ಕಸ್ಟಮ್ ಕಾರ್ಯವನ್ನು ಬಳಸಲು ಪ್ರಾರಂಭಿಸುವ ಮೊದಲು, ಅದು ಏನು ಸಾಮರ್ಥ್ಯವನ್ನು ಹೊಂದಿದೆ ಎಂಬುದನ್ನು ನೀವು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಬೇಕು, ಸರಿ? ಕೆಳಗಿನ ಉದಾಹರಣೆಗಳು ಕೆಲವು ಸಾಮಾನ್ಯ ಬಳಕೆಯ ಸಂದರ್ಭಗಳನ್ನು ಒಳಗೊಂಡಿವೆ ಮತ್ತು ಡೈನಾಮಿಕ್ ಅರೇ ಎಕ್ಸೆಲ್ (ಮೈಕ್ರೋಸಾಫ್ಟ್ 365 ಮತ್ತು ಎಕ್ಸೆಲ್ 2021) ಮತ್ತು ಸಾಂಪ್ರದಾಯಿಕ ಎಕ್ಸೆಲ್ (2019 ಮತ್ತು ಹಳೆಯ ಆವೃತ್ತಿಗಳಲ್ಲಿ) ವರ್ತನೆಯು ಏಕೆ ಭಿನ್ನವಾಗಿರಬಹುದು ಎಂಬುದನ್ನು ವಿವರಿಸುತ್ತದೆ.

    ಗಮನಿಸಿ. ಕಾಲ್ಪನಿಕ ಸರಳ ಡೇಟಾ ಸೆಟ್‌ಗಳಿಗಾಗಿ ಔಟ್ ರೆಜೆಕ್ಸ್ ಉದಾಹರಣೆಗಳನ್ನು ಬರೆಯಲಾಗಿದೆ. ಅವರು ನಿಮ್ಮ ನೈಜ ವರ್ಕ್‌ಶೀಟ್‌ಗಳಲ್ಲಿ ದೋಷರಹಿತವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತಾರೆ ಎಂದು ನಾವು ಖಾತರಿಪಡಿಸುವುದಿಲ್ಲ. ರೆಜೆಕ್ಸ್‌ನಲ್ಲಿ ಅನುಭವ ಹೊಂದಿರುವವರು ನಿಯಮಿತ ಅಭಿವ್ಯಕ್ತಿಗಳನ್ನು ಬರೆಯುವುದು ಪರಿಪೂರ್ಣತೆಯ ಅಂತ್ಯವಿಲ್ಲದ ಹಾದಿ ಎಂದು ಒಪ್ಪಿಕೊಳ್ಳುತ್ತಾರೆ - ಬಹುತೇಕ ಯಾವಾಗಲೂ ಮಾಡಲು ಒಂದು ಮಾರ್ಗವಿದೆಇದು ಹೆಚ್ಚು ಸೊಗಸಾದ ಅಥವಾ ವ್ಯಾಪಕ ಶ್ರೇಣಿಯ ಇನ್‌ಪುಟ್ ಡೇಟಾವನ್ನು ನಿರ್ವಹಿಸುವ ಸಾಮರ್ಥ್ಯವನ್ನು ಹೊಂದಿದೆ.

    ಸ್ಟ್ರಿಂಗ್‌ನಿಂದ ಸಂಖ್ಯೆಯನ್ನು ಹೊರತೆಗೆಯಲು Regex

    "ಸರಳದಿಂದ ಸಂಕೀರ್ಣಕ್ಕೆ" ಬೋಧನೆಯ ಮೂಲ ಗರಿಷ್ಠತೆಯನ್ನು ಅನುಸರಿಸಿ, ನಾವು ಸರಳವಾದ ಪ್ರಕರಣದಿಂದ ಪ್ರಾರಂಭಿಸುತ್ತೇವೆ: ಸ್ಟ್ರಿಂಗ್‌ನಿಂದ ಸಂಖ್ಯೆಯನ್ನು ಹೊರತೆಗೆಯುವುದು.

    ಯಾವ ಸಂಖ್ಯೆಯನ್ನು ಹಿಂಪಡೆಯಬೇಕು ಎಂಬುದನ್ನು ನೀವು ನಿರ್ಧರಿಸುವ ಮೊದಲ ವಿಷಯ: ಮೊದಲ, ಕೊನೆಯ, ನಿರ್ದಿಷ್ಟ ಸಂಭವಿಸುವಿಕೆ ಅಥವಾ ಎಲ್ಲಾ ಸಂಖ್ಯೆಗಳು.

    ಮೊದಲ ಸಂಖ್ಯೆಯನ್ನು ಹೊರತೆಗೆಯಿರಿ

    ಇದು ರೆಜೆಕ್ಸ್ ಪಡೆಯುವಷ್ಟು ಸರಳವಾಗಿದೆ. \d ಎಂದರೆ 0 ರಿಂದ 9 ರವರೆಗಿನ ಯಾವುದೇ ಅಂಕಿ, ಮತ್ತು + ಎಂದರೆ ಒಂದು ಅಥವಾ ಹೆಚ್ಚು ಬಾರಿ, ನಮ್ಮ ನಿಯಮಿತ ಅಭಿವ್ಯಕ್ತಿ ಈ ರೂಪವನ್ನು ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ:

    ಪ್ಯಾಟರ್ನ್ : \d+

    ಸೆಟ್ instance_num ರಿಂದ 1 ಮತ್ತು ನೀವು ಬಯಸಿದ ಫಲಿತಾಂಶವನ್ನು ಪಡೆಯುತ್ತೀರಿ:

    =RegExpExtract(A5, "\d+", 1)

    A5 ಮೂಲ ಸ್ಟ್ರಿಂಗ್ ಆಗಿದೆ.

    ಅನುಕೂಲಕ್ಕಾಗಿ, ನೀವು ಇನ್‌ಪುಟ್ ಮಾಡಬಹುದು ಪೂರ್ವನಿರ್ಧರಿತ ಸೆಲ್‌ನಲ್ಲಿನ ಮಾದರಿ ($A$2 ) ಮತ್ತು ಅದರ ವಿಳಾಸವನ್ನು $ ಚಿಹ್ನೆಯೊಂದಿಗೆ ಲಾಕ್ ಮಾಡಿ:

    =RegExpExtract(A5, $A$2, 1)

    ಕೊನೆಯ ಸಂಖ್ಯೆಯನ್ನು ಪಡೆಯಿರಿ

    ಸ್ಟ್ರಿಂಗ್‌ನಲ್ಲಿ ಕೊನೆಯ ಸಂಖ್ಯೆಯನ್ನು ಹೊರತೆಗೆಯಲು , ಬಳಸಲು ಮಾದರಿ ಇಲ್ಲಿದೆ:

    ಪ್ಯಾಟರ್ನ್ : (\d+)(?!.*\d)

    ಮಾನವ ಭಾಷೆಗೆ ಅನುವಾದಿಸಲಾಗಿದೆ , ಅದು ಹೇಳುತ್ತದೆ: ಯಾವುದೇ ಇತರ ಸಂಖ್ಯೆಯಿಂದ ಅನುಸರಿಸದ ಸಂಖ್ಯೆಯನ್ನು (ಎಲ್ಲಿಯಾದರೂ, ತಕ್ಷಣವೇ ಅಲ್ಲ) ಹುಡುಕಿ. ಇದನ್ನು ವ್ಯಕ್ತಪಡಿಸಲು, ನಾವು ನೆಗೆಟಿವ್ ಲುಕ್‌ಹೆಡ್ (?!.*\d) ಅನ್ನು ಬಳಸುತ್ತಿದ್ದೇವೆ, ಅಂದರೆ ಮಾದರಿಯ ಬಲಭಾಗದಲ್ಲಿ ಅದರ ಮೊದಲು ಎಷ್ಟು ಇತರ ಅಕ್ಷರಗಳಿವೆ ಎಂಬುದನ್ನು ಲೆಕ್ಕಿಸದೆ ಬೇರೆ ಯಾವುದೇ ಅಂಕಿ (\d) ಇರಬಾರದು.

    =RegExpExtract(A5, "(\d+)(?!.*\d)")

    ಸಲಹೆಗಳು:

    • ನಿರ್ದಿಷ್ಟ ಘಟನೆ ಪಡೆಯಲು, ಪ್ಯಾಟರ್ನ್ ಮತ್ತು ಸೂಕ್ತವಾದ ಧಾರಾವಾಹಿಗಾಗಿ \d+ ಬಳಸಿ instance_num ಗಾಗಿ ಸಂಖ್ಯೆ.
    • ಎಲ್ಲಾ ಸಂಖ್ಯೆಗಳನ್ನು ಹೊರತೆಗೆಯಲು ಸೂತ್ರವನ್ನು ಮುಂದಿನ ಉದಾಹರಣೆಯಲ್ಲಿ ಚರ್ಚಿಸಲಾಗಿದೆ.

    ಎಲ್ಲಾ ಹೊಂದಾಣಿಕೆಗಳನ್ನು ಹೊರತೆಗೆಯಲು

    11>

    ನಮ್ಮ ಉದಾಹರಣೆಯನ್ನು ಸ್ವಲ್ಪ ಮುಂದಕ್ಕೆ ತಳ್ಳಿ, ನೀವು ಎಲ್ಲಾ ಸಂಖ್ಯೆಗಳನ್ನು ಸ್ಟ್ರಿಂಗ್‌ನಿಂದ ಪಡೆಯಲು ಬಯಸುತ್ತೀರಿ ಎಂದು ಭಾವಿಸೋಣ, ಕೇವಲ ಒಂದಲ್ಲ>instance_num ವಾದ. ಡೀಫಾಲ್ಟ್ ಎಲ್ಲಾ ಹೊಂದಾಣಿಕೆಗಳು, ಆದ್ದರಿಂದ ನೀವು ಈ ಪ್ಯಾರಾಮೀಟರ್ ಅನ್ನು ಬಿಟ್ಟುಬಿಡುತ್ತೀರಿ:

    =RegExpExtract(A2, "\d+")

    ಸೂತ್ರವು ಒಂದೇ ಕೋಶಕ್ಕೆ ಸುಂದರವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ, ಆದರೆ ಡೈನಾಮಿಕ್ ಅರೇ ಎಕ್ಸೆಲ್ ಮತ್ತು ಡೈನಾಮಿಕ್ ಅಲ್ಲದ ಆವೃತ್ತಿಗಳಲ್ಲಿ ವರ್ತನೆಯು ಭಿನ್ನವಾಗಿರುತ್ತದೆ.

    ಎಕ್ಸೆಲ್ 365 ಮತ್ತು ಎಕ್ಸೆಲ್ 2021

    ಡೈನಾಮಿಕ್ ಅರೇಗಳಿಗೆ ಬೆಂಬಲ ನೀಡುವ ಕಾರಣ, ಎಲ್ಲಾ ಲೆಕ್ಕಾಚಾರದ ಫಲಿತಾಂಶಗಳನ್ನು ಪ್ರದರ್ಶಿಸಲು ಅಗತ್ಯವಿರುವಷ್ಟು ಸೆಲ್‌ಗಳಿಗೆ ನಿಯಮಿತ ಸೂತ್ರವು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಚೆಲ್ಲುತ್ತದೆ. ಎಕ್ಸೆಲ್ ಪರಿಭಾಷೆಯಲ್ಲಿ, ಇದನ್ನು ಸ್ಪಿಲ್ಡ್ ರೇಂಜ್ ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ:

    ಎಕ್ಸೆಲ್ 2019 ಮತ್ತು ಕಡಿಮೆ

    ಪ್ರಿ-ಡೈನಾಮಿಕ್ ಎಕ್ಸೆಲ್‌ನಲ್ಲಿ, ಮೇಲಿನ ಸೂತ್ರವು ಕೇವಲ ಒಂದು ಹೊಂದಾಣಿಕೆಯನ್ನು ನೀಡುತ್ತದೆ. ಬಹು ಹೊಂದಾಣಿಕೆಗಳನ್ನು ಪಡೆಯಲು, ನೀವು ಅದನ್ನು ರಚನೆಯ ಸೂತ್ರವನ್ನಾಗಿ ಮಾಡಬೇಕಾಗುತ್ತದೆ. ಇದಕ್ಕಾಗಿ, ಸೆಲ್‌ಗಳ ಶ್ರೇಣಿಯನ್ನು ಆಯ್ಕೆಮಾಡಿ, ಸೂತ್ರವನ್ನು ಟೈಪ್ ಮಾಡಿ ಮತ್ತು ಅದನ್ನು ಪೂರ್ಣಗೊಳಿಸಲು Ctrl + Shift + Enter ಅನ್ನು ಒತ್ತಿರಿ.

    ಈ ವಿಧಾನದ ಅನಾನುಕೂಲವೆಂದರೆ "ಹೆಚ್ಚುವರಿ ಸೆಲ್‌ಗಳಲ್ಲಿ" #N/A ದೋಷಗಳು ಕಾಣಿಸಿಕೊಳ್ಳುವುದು. . ವಿಷಾದನೀಯವಾಗಿ, ಅದರ ಬಗ್ಗೆ ಏನನ್ನೂ ಮಾಡಲಾಗುವುದಿಲ್ಲ (IFERROR ಅಥವಾ IFNA ಅದನ್ನು ಸರಿಪಡಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ, ಅಯ್ಯೋ).

    ಒಂದು ಸೆಲ್‌ನಲ್ಲಿ ಎಲ್ಲಾ ಹೊಂದಾಣಿಕೆಗಳನ್ನು ಹೊರತೆಗೆಯಿರಿ

    ಡೇಟಾದ ಕಾಲಮ್ ಅನ್ನು ಪ್ರಕ್ರಿಯೆಗೊಳಿಸುವಾಗ, ಮೇಲಿನ ವಿಧಾನವು ನಿಸ್ಸಂಶಯವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುವುದಿಲ್ಲ. ಈ ಸಂದರ್ಭದಲ್ಲಿ, ಆದರ್ಶ ಪರಿಹಾರಒಂದೇ ಸೆಲ್‌ನಲ್ಲಿ ಎಲ್ಲಾ ಪಂದ್ಯಗಳನ್ನು ಹಿಂತಿರುಗಿಸುತ್ತದೆ. ಇದನ್ನು ಮಾಡಲು, RegExpExtract ಫಲಿತಾಂಶಗಳನ್ನು TEXTJOIN ಕಾರ್ಯಕ್ಕೆ ಒದಗಿಸಿ ಮತ್ತು ನೀವು ಇಷ್ಟಪಡುವ ಯಾವುದೇ ಡಿಲಿಮಿಟರ್‌ನೊಂದಿಗೆ ಅವುಗಳನ್ನು ಪ್ರತ್ಯೇಕಿಸಿ, ಅಲ್ಪವಿರಾಮ ಮತ್ತು ಜಾಗವನ್ನು ಹೇಳಿ:

    =TEXTJOIN(", ", TRUE, RegExpExtract(A5, "\d+"))

    ಗಮನಿಸಿ. TEXTJOIN ಕಾರ್ಯವು Microsoft 365, Excel 2021 ಮತ್ತು Excel 2019 ಗಾಗಿ Excel ನಲ್ಲಿ ಮಾತ್ರ ಲಭ್ಯವಿರುವುದರಿಂದ, ಸೂತ್ರವು ಹಳೆಯ ಆವೃತ್ತಿಗಳಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸುವುದಿಲ್ಲ.

    ಸ್ಟ್ರಿಂಗ್‌ನಿಂದ ಪಠ್ಯವನ್ನು ಹೊರತೆಗೆಯಲು Regex

    ಇದರಿಂದ ಪಠ್ಯವನ್ನು ಹೊರತೆಗೆಯಲಾಗುತ್ತಿದೆ ಎಕ್ಸೆಲ್ ನಲ್ಲಿ ಆಲ್ಫಾನ್ಯೂಮರಿಕ್ ಸ್ಟ್ರಿಂಗ್ ಸಾಕಷ್ಟು ಸವಾಲಿನ ಕೆಲಸವಾಗಿದೆ. ರಿಜೆಕ್ಸ್ನೊಂದಿಗೆ, ಇದು ಪೈನಂತೆ ಸುಲಭವಾಗುತ್ತದೆ. ಅಂಕೆಯಲ್ಲದ ಎಲ್ಲವನ್ನೂ ಹೊಂದಿಸಲು ನಿರಾಕರಿಸಿದ ವರ್ಗವನ್ನು ಬಳಸಿ.

    ಪ್ಯಾಟರ್ನ್ : [^\d]+

    ವೈಯಕ್ತಿಕ ಸೆಲ್‌ಗಳಲ್ಲಿ ಸಬ್‌ಸ್ಟ್ರಿಂಗ್‌ಗಳನ್ನು ಪಡೆಯಲು (ಸ್ಪಿಲ್ ರೇಂಜ್) , ಸೂತ್ರವು ಹೀಗಿದೆ:

    =RegExpExtract(A5, "[^\d]+")

    ಒಂದು ಸೆಲ್‌ಗೆ ಎಲ್ಲಾ ಹೊಂದಾಣಿಕೆಗಳನ್ನು ಔಟ್‌ಪುಟ್ ಮಾಡಲು, TEXTJOIN ನಲ್ಲಿ RegExpExtract ಕಾರ್ಯವನ್ನು ಈ ರೀತಿ ನೆಸ್ಟ್ ಮಾಡಿ:

    =TEXTJOIN("", TRUE, RegExpExtract(A5, "[^\d]+"))

    Regex to ಸ್ಟ್ರಿಂಗ್‌ನಿಂದ ಇಮೇಲ್ ವಿಳಾಸವನ್ನು ಹೊರತೆಗೆಯಿರಿ

    ಬಹಳಷ್ಟು ವಿಭಿನ್ನ ಮಾಹಿತಿಯನ್ನು ಹೊಂದಿರುವ ಸ್ಟ್ರಿಂಗ್‌ನಿಂದ ಇಮೇಲ್ ವಿಳಾಸವನ್ನು ಹೊರತೆಗೆಯಲು, ಇಮೇಲ್ ವಿಳಾಸದ ರಚನೆಯನ್ನು ಪುನರಾವರ್ತಿಸುವ ನಿಯಮಿತ ಅಭಿವ್ಯಕ್ತಿಯನ್ನು ಬರೆಯಿರಿ.

    ಪ್ಯಾಟರ್ನ್ : [\w\.\-]+@[A-Za-z0-9\.\-]+\.[A-Za-z]{2,24}

    ಈ ರಿಜೆಕ್ಸ್ ಅನ್ನು ಒಡೆಯುವುದು , ನಾವು ಪಡೆಯುವುದು ಇಲ್ಲಿದೆ:

    • [\w\.\-]+ ಎಂಬುದು 1 ಅಥವಾ ಹೆಚ್ಚಿನ ಆಲ್ಫಾನ್ಯೂಮರಿಕ್ ಅಕ್ಷರಗಳು, ಅಂಡರ್‌ಸ್ಕೋರ್‌ಗಳು, ಡಾಟ್‌ಗಳು ಮತ್ತು ಹೈಫನ್‌ಗಳನ್ನು ಒಳಗೊಂಡಿರುವ ಬಳಕೆದಾರಹೆಸರು.
    • @ ಚಿಹ್ನೆ
    • [A-Za-z0-9\.\-]+ ಇದು ಒಳಗೊಂಡಿರುವ ಡೊಮೇನ್ ಹೆಸರು: ದೊಡ್ಡಕ್ಷರ ಮತ್ತು ಸಣ್ಣ ಅಕ್ಷರಗಳು, ಅಂಕೆಗಳು, ಹೈಫನ್‌ಗಳು ಮತ್ತು ಚುಕ್ಕೆಗಳು (ಸಂದರ್ಭದಲ್ಲಿಉಪಡೊಮೇನ್‌ಗಳ). ಅಂಡರ್‌ಸ್ಕೋರ್‌ಗಳನ್ನು ಇಲ್ಲಿ ಅನುಮತಿಸಲಾಗುವುದಿಲ್ಲ, ಆದ್ದರಿಂದ ಯಾವುದೇ ಅಕ್ಷರ, ಅಂಕಿ ಅಥವಾ ಅಂಡರ್‌ಸ್ಕೋರ್‌ಗೆ ಹೊಂದಿಕೆಯಾಗುವ \w ಬದಲಿಗೆ 3 ವಿಭಿನ್ನ ಅಕ್ಷರ ಸೆಟ್‌ಗಳನ್ನು (ಉದಾಹರಣೆಗೆ A-Z a-z ಮತ್ತು 0-9) ಬಳಸಲಾಗುತ್ತದೆ.
    • \.[A-Za-z ]{2,24} ಉನ್ನತ ಮಟ್ಟದ ಡೊಮೇನ್ ಆಗಿದೆ. ದೊಡ್ಡಕ್ಷರ ಮತ್ತು ಸಣ್ಣ ಅಕ್ಷರಗಳ ನಂತರ ಚುಕ್ಕೆಯನ್ನು ಒಳಗೊಂಡಿರುತ್ತದೆ. ಹೆಚ್ಚಿನ ಉನ್ನತ ಮಟ್ಟದ ಡೊಮೇನ್‌ಗಳು 3-ಅಕ್ಷರಗಳ ಉದ್ದವನ್ನು ಹೊಂದಿರುತ್ತವೆ (ಉದಾ. .com .org, .edu, ಇತ್ಯಾದಿ), ಆದರೆ ಸಿದ್ಧಾಂತದಲ್ಲಿ ಇದು 2 ರಿಂದ 24 ಅಕ್ಷರಗಳನ್ನು ಹೊಂದಿರಬಹುದು (ಉದ್ದದ ನೋಂದಣಿ TLD).

    ಸ್ಟ್ರಿಂಗ್ A5 ಮತ್ತು A2 ನಲ್ಲಿ ನಮೂನೆ ಇದೆ ಎಂದು ಊಹಿಸಿ, ಇಮೇಲ್ ವಿಳಾಸವನ್ನು ಹೊರತೆಗೆಯಲು ಸೂತ್ರವು ಹೀಗಿದೆ:

    =RegExpExtract(A5, $A$2)

    ಇಮೇಲ್‌ನಿಂದ ಡೊಮೇನ್ ಅನ್ನು ಹೊರತೆಗೆಯಲು Regex

    ಅದಾಗ ಇಮೇಲ್ ಡೊಮೇನ್ ಅನ್ನು ಹೊರತೆಗೆಯಲು ಬರುತ್ತದೆ, @ ಅಕ್ಷರವನ್ನು ತಕ್ಷಣವೇ ಅನುಸರಿಸುವ ಪಠ್ಯವನ್ನು ಹುಡುಕಲು ಕ್ಯಾಪ್ಚರ್ ಮಾಡುವ ಗುಂಪನ್ನು ಬಳಸುವುದು ಮನಸ್ಸಿಗೆ ಬರುವ ಮೊದಲ ಆಲೋಚನೆ.

    ಪ್ಯಾಟರ್ನ್ : @([A-Za-z0 -9\.\-]+\.[A-Za-z]{2,24})

    ನಮ್ಮ RegExp ಕಾರ್ಯಕ್ಕೆ ಇದನ್ನು ಸರ್ವ್ ಮಾಡಿ:

    =RegExpExtract(A5, "@([A-Za-z0-9\.\-]+\.[A-Za-z]{2,24})")

    ಮತ್ತು ನೀವು ಈ ಫಲಿತಾಂಶವನ್ನು ಪಡೆಯುತ್ತೀರಿ:

    ಕ್ಲಾಸಿಕ್ ನಿಯಮಿತ ಅಭಿವ್ಯಕ್ತಿಗಳೊಂದಿಗೆ, ಸೆರೆಹಿಡಿಯುವ ಗುಂಪಿನ ಹೊರಗಿನ ಯಾವುದನ್ನೂ ಹೊರತೆಗೆಯುವಿಕೆಯಲ್ಲಿ ಸೇರಿಸಲಾಗಿಲ್ಲ. VBA RegEx ಏಕೆ ವಿಭಿನ್ನವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಮತ್ತು "@" ಅನ್ನು ಸೆರೆಹಿಡಿಯುತ್ತದೆ ಎಂದು ಯಾರಿಗೂ ತಿಳಿದಿಲ್ಲ. ಅದನ್ನು ತೊಡೆದುಹಾಕಲು, ನೀವು ಫಲಿತಾಂಶದಿಂದ ಮೊದಲ ಅಕ್ಷರವನ್ನು ಖಾಲಿ ಸ್ಟ್ರಿಂಗ್‌ನೊಂದಿಗೆ ಬದಲಾಯಿಸುವ ಮೂಲಕ ತೆಗೆದುಹಾಕಬಹುದು.

    =REPLACE(RegExpExtract(A5, "@([a-z\d][a-z\d\-\.]*\.[a-z]{2,})", 1, FALSE), 1, 1, "")

    ಫೋನ್ ಸಂಖ್ಯೆಗಳನ್ನು ಹೊರತೆಗೆಯಲು ನಿಯಮಿತ ಅಭಿವ್ಯಕ್ತಿ

    ಫೋನ್ ಸಂಖ್ಯೆಗಳು ಹಲವು ವಿಧಗಳಲ್ಲಿ ಬರೆಯಬಹುದು, ಅದಕ್ಕಾಗಿಯೇ ಎಲ್ಲಾ ಅಡಿಯಲ್ಲಿ ಕೆಲಸ ಮಾಡುವ ಪರಿಹಾರದೊಂದಿಗೆ ಬರಲು ಅಸಾಧ್ಯವಾಗಿದೆ(\d{4}ಸ್ಟ್ರಿಂಗ್‌ನಿಂದ

    ದಿನಾಂಕವನ್ನು ಹೊರತೆಗೆಯಲು ನಿಯಮಿತ ಅಭಿವ್ಯಕ್ತಿ ದಿನಾಂಕವು ಸ್ಟ್ರಿಂಗ್‌ನಲ್ಲಿ ಗೋಚರಿಸುವ ಸ್ವರೂಪವನ್ನು ಅವಲಂಬಿಸಿರುತ್ತದೆ. ಉದಾಹರಣೆಗೆ:

    1/1/21 ಅಥವಾ 01/01/2021 ನಂತಹ ದಿನಾಂಕಗಳನ್ನು ಹೊರತೆಗೆಯಲು, ರಿಜೆಕ್ಸ್: \d{1,2}\/\d{1,2}\/(\d {4}ಸಂದರ್ಭಗಳು. ಅದೇನೇ ಇದ್ದರೂ, ನಿಮ್ಮ ಡೇಟಾಸೆಟ್‌ನಲ್ಲಿ ಬಳಸಲಾದ ಎಲ್ಲಾ ಫಾರ್ಮ್ಯಾಟ್‌ಗಳನ್ನು ನೀವು ಬರೆಯಬಹುದು ಮತ್ತು ಅವುಗಳನ್ನು ಹೊಂದಿಸಲು ಪ್ರಯತ್ನಿಸಬಹುದು.

    ಈ ಉದಾಹರಣೆಗಾಗಿ, ನಾವು ಈ ಯಾವುದೇ ಫಾರ್ಮ್ಯಾಟ್‌ಗಳಲ್ಲಿ ಫೋನ್ ಸಂಖ್ಯೆಗಳನ್ನು ಹೊರತೆಗೆಯುವ ರಿಜೆಕ್ಸ್ ಅನ್ನು ರಚಿಸಲಿದ್ದೇವೆ:

    (123) 345-6789

    (123) 345 6789

    (123)3456789

    123- 345-6789

    123.345.6789

    123 345 6789

    1233456789

    0> ಪ್ಯಾಟರ್ನ್ : \(?\d{3}[-\. \)]*\d{3}[-\. ]?\d{4}\b
    • ಮೊದಲ ಭಾಗ \(?\d{3} ಶೂನ್ಯಕ್ಕೆ ಹೊಂದಿಕೆಯಾಗುತ್ತದೆ ಅಥವಾ ಮೂರು ಅಂಕೆಗಳು d{3} ನಂತರ ಒಂದು ಆರಂಭಿಕ ಆವರಣಕ್ಕೆ ಹೊಂದಿಕೆಯಾಗುತ್ತದೆ.
    • [-\. \)]* ಭಾಗವು 0 ಅಥವಾ ಅದಕ್ಕಿಂತ ಹೆಚ್ಚು ಬಾರಿ ಕಾಣಿಸಿಕೊಳ್ಳುವ ಚದರ ಆವರಣದಲ್ಲಿರುವ ಯಾವುದೇ ಅಕ್ಷರವನ್ನು ಅರ್ಥೈಸುತ್ತದೆ: ಹೈಫನ್, ಅವಧಿ, ಸ್ಥಳ ಅಥವಾ ಮುಚ್ಚುವ ಆವರಣ.
    • ಮುಂದೆ, ನಾವು ಮತ್ತೆ ಮೂರು ಅಂಕೆಗಳನ್ನು ಹೊಂದಿದ್ದೇವೆ d{3} ನಂತರ ಯಾವುದೇ ಹೈಫನ್, ಅವಧಿ ಅಥವಾ ಸ್ಪೇಸ್ [-\. ]? 0 ಅಥವಾ 1 ಬಾರಿ ಕಾಣಿಸಿಕೊಳ್ಳುತ್ತದೆ.
    • ಅದರ ನಂತರ, ನಾಲ್ಕು ಅಂಕಿಗಳ ಒಂದು ಗುಂಪು ಇದೆ \d{4}.
    • ಅಂತಿಮವಾಗಿ, ಒಂದು ಪದದ ಗಡಿ ಇರುತ್ತದೆ \b ನಾವು ಫೋನ್ ಸಂಖ್ಯೆ ಎಂದು ವ್ಯಾಖ್ಯಾನಿಸುತ್ತದೆ ಹುಡುಕುತ್ತಿರುವುದು ದೊಡ್ಡ ಸಂಖ್ಯೆಯ ಭಾಗವಾಗಿರಲು ಸಾಧ್ಯವಿಲ್ಲ.

    ಸಂಪೂರ್ಣ ಸೂತ್ರವು ಈ ಆಕಾರವನ್ನು ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ:

    =RegExpExtract(A5, "\(?\d{3}[-\. \)]*\d{3}[-\. ]?\d{4}\b")

    ಮೇಲಿನ ರಿಜೆಕ್ಸ್ ಕೆಲವನ್ನು ಹಿಂತಿರುಗಿಸಬಹುದು ಎಂಬುದನ್ನು ದಯವಿಟ್ಟು ಗಮನಿಸಿ ತಪ್ಪು-ಧನಾತ್ಮಕ ಫಲಿತಾಂಶಗಳಾದ 123) 456 7899 ಅಥವಾ (123 456 7899. ಕೆಳಗಿನ ಆವೃತ್ತಿಯು ಈ ಸಮಸ್ಯೆಗಳನ್ನು ಪರಿಹರಿಸುತ್ತದೆ. ಆದಾಗ್ಯೂ, ಈ ಸಿಂಟ್ಯಾಕ್ಸ್ VBA RegExp ಕಾರ್ಯಗಳಲ್ಲಿ ಮಾತ್ರ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ, ಕ್ಲಾಸಿಕ್ ನಿಯಮಿತ ಅಭಿವ್ಯಕ್ತಿಗಳಲ್ಲಿ ಅಲ್ಲ.

    ಪ್ಯಾಟರ್ನ್ : (\(\d{3}\)ಎರಡು ಅಕ್ಷರಗಳ ನಡುವೆ ಪಠ್ಯವನ್ನು ಹೊರತೆಗೆಯಲು ಎರಡು ತಂತಿಗಳ ನಡುವೆ ಪಠ್ಯವನ್ನು ಹೊರತೆಗೆಯಲು ಸಹ ಕೆಲಸ ಮಾಡುತ್ತದೆ.

    ಉದಾಹರಣೆಗೆ, "ಪರೀಕ್ಷೆ 1" ಮತ್ತು "ಪರೀಕ್ಷೆ 2" ನಡುವೆ ಎಲ್ಲವನ್ನೂ ಪಡೆಯಲು, ಈ ಕೆಳಗಿನ ನಿಯಮಿತ ಅಭಿವ್ಯಕ್ತಿ ಬಳಸಿ.

    ಪ್ಯಾಟರ್ನ್ : test 1(.*?)test 2

    ಸಂಪೂರ್ಣ ಸೂತ್ರವು:

    =AblebitsRegexExtract(A5, "test 1(.*?)test 2")

    URL ನಿಂದ ಡೊಮೇನ್ ಅನ್ನು ಹೊರತೆಗೆಯಲು Regex

    ಸಾಮಾನ್ಯ ಅಭಿವ್ಯಕ್ತಿಗಳೊಂದಿಗೆ, URL ಗಳಿಂದ ಡೊಮೇನ್ ಹೆಸರುಗಳನ್ನು ಹೊರತೆಗೆಯುವುದು ಕ್ಷುಲ್ಲಕ ಕೆಲಸವಲ್ಲ. ಟ್ರಿಕ್ ಮಾಡುವ ಪ್ರಮುಖ ಅಂಶವೆಂದರೆ ಸೆರೆಹಿಡಿಯದ ಗುಂಪುಗಳು. ನಿಮ್ಮ ಅಂತಿಮ ಗುರಿಯನ್ನು ಅವಲಂಬಿಸಿ, ಕೆಳಗಿನ ರಿಜೆಕ್ಸ್‌ಗಳಲ್ಲಿ ಒಂದನ್ನು ಆಯ್ಕೆಮಾಡಿ.

    ಉಪಡೊಮೇನ್‌ಗಳನ್ನು ಒಳಗೊಂಡಂತೆ ಪೂರ್ಣ ಡೊಮೇನ್ ಹೆಸರನ್ನು ಪಡೆಯಲು

    ಪ್ಯಾಟರ್ನ್ : (?: https?\:

    ಮೈಕೆಲ್ ಬ್ರೌನ್ ಸಾಫ್ಟ್‌ವೇರ್ ಪರಿಕರಗಳನ್ನು ಬಳಸಿಕೊಂಡು ಸಂಕೀರ್ಣ ಪ್ರಕ್ರಿಯೆಗಳನ್ನು ಸರಳಗೊಳಿಸುವ ಉತ್ಸಾಹವನ್ನು ಹೊಂದಿರುವ ಮೀಸಲಾದ ತಂತ್ರಜ್ಞಾನ ಉತ್ಸಾಹಿ. ಟೆಕ್ ಉದ್ಯಮದಲ್ಲಿ ಒಂದು ದಶಕಕ್ಕೂ ಹೆಚ್ಚು ಅನುಭವದೊಂದಿಗೆ, ಅವರು ಮೈಕ್ರೋಸಾಫ್ಟ್ ಎಕ್ಸೆಲ್ ಮತ್ತು ಔಟ್‌ಲುಕ್, ಹಾಗೆಯೇ ಗೂಗಲ್ ಶೀಟ್‌ಗಳು ಮತ್ತು ಡಾಕ್ಸ್‌ನಲ್ಲಿ ತಮ್ಮ ಕೌಶಲ್ಯಗಳನ್ನು ಹೆಚ್ಚಿಸಿದ್ದಾರೆ. ಮೈಕೆಲ್ ಅವರ ಬ್ಲಾಗ್ ತನ್ನ ಜ್ಞಾನ ಮತ್ತು ಪರಿಣತಿಯನ್ನು ಇತರರೊಂದಿಗೆ ಹಂಚಿಕೊಳ್ಳಲು ಸಮರ್ಪಿಸಲಾಗಿದೆ, ಉತ್ಪಾದಕತೆ ಮತ್ತು ದಕ್ಷತೆಯನ್ನು ಸುಧಾರಿಸಲು ಸುಲಭವಾಗಿ ಅನುಸರಿಸಲು ಸಲಹೆಗಳು ಮತ್ತು ಟ್ಯುಟೋರಿಯಲ್‌ಗಳನ್ನು ಒದಗಿಸುತ್ತದೆ. ನೀವು ಅನುಭವಿ ವೃತ್ತಿಪರರಾಗಿರಲಿ ಅಥವಾ ಹರಿಕಾರರಾಗಿರಲಿ, ಮೈಕೆಲ್ ಅವರ ಬ್ಲಾಗ್ ಅಮೂಲ್ಯವಾದ ಒಳನೋಟಗಳನ್ನು ಮತ್ತು ಈ ಅಗತ್ಯ ಸಾಫ್ಟ್‌ವೇರ್ ಪರಿಕರಗಳಿಂದ ಹೆಚ್ಚಿನದನ್ನು ಪಡೆಯಲು ಪ್ರಾಯೋಗಿಕ ಸಲಹೆಯನ್ನು ನೀಡುತ್ತದೆ.