Regular expression to match first and last character

113,898

Solution 1

The below regex will match the strings that start and end with an alpha character.

/^[a-z].*[a-z]$/igm

The a string also starts and ends with an alpha character, right? Then you have to use the below regex.

/^[a-z](.*[a-z])?$/igm

DEMO

Explanation:

^             #  Represents beginning of a line.
[a-z]         #  Alphabetic character.
.*            #  Any character 0 or more times.
[a-z]         #  Alphabetic character.
$             #  End of a line.
i             #  Case-insensitive match.
g             #  Global.
m             #  Multiline

Solution 2

You can do it as follows to check for the first and last characters and then anything in between:

/^[a-z].*[a-z]$/im

DEMO

Share:
113,898
Jason
Author by

Jason

Updated on December 19, 2021

Comments

  • Jason
    Jason over 2 years

    I'm trying to use regex to check that the first and last characters in a string are alpha characters between a-z.

    I know this matches the first character:

    /^[a-z]/i
    

    But how do I then check for the last character as well?

    This:

    /^[a-z][a-z]$/i
    

    does not work. And I suspect there should be something in between the two clauses, but I don't know what!