'Pandas - Check If First Character Is Special Character

I have a sample dataframe df.

I would like to know if there is a way to return all values that begin w a special character.

I currently have it to only return values with the '@' sign, but would like all special characters. Or at least how to list multiple options using regex

Fruits

Apple
-Orange
$Pear
Cherry
@Grape
df.str.contains(r'^\[@]')]


Solution 1:[1]

DataFrame

Fruits
0   Apple
1   -Orange
2   $Pear
3   Cherry
4   @Grape
5   _Grape

Check if the first character is alphanumeric

df['Fruits'].str.contains('^\_|[^\w]')

you can then filter if needed

df[df['Fruits'].str.contains('^\_|[^\w]')]

Outcome

Fruits
1  -Orange
2    $Pear
4   @Grape
5   _Grape

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1