cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Warren_Gibbs
Helper I
Helper I

Regex help! (Plumsail Regular Expression Match)

Hi

I am attempting to perform a similar task in Power Automate as presented in this article 


My data source is a field in SharePoint online - containing the below data:

 

- **SharePoint sites:** _SharePoint RCM_;
- **SharePoint Site Permissions:** _Read, create and modify_;
- **Teams group:** _Teams - O_;
- **Teams group Permissions:** _Owner_;
- **File Server - shared folder:** _uml RCM_;
- **File Server Permissions:** _Read, create and modify_;
- **Group Email Accounts :** _Group email_;
- **Outlook Public Folders:** _OPF _;
- **Access to office areas (door card):** _IT Office _;
- **Comments:** _Comments_;


I used Regex101 to test the below statements.

 

Individually, each one matches the required line of data in the above string. However when I try to combine all of them into one complete statement (as demonstrated in the article) no matches are identified.

 

My assumption is that the '|' symbol at the end of each statement represents an OR condition for the next statement.  Saying that, I removed these symbols with the same problem.

 

Any help would be really appreciated.

 

Thanks


\*\*SharePoint sites:\*\* _(?<SharePointSites>.+|)

\*\*SharePoint Site Permissions:\*\* _(?<SharePointSitePermissions>.+|)

\*\*Teams group:\*\* _(?<TeamsGroup>.+|)

\*\*Teams group Permissions:\*\* _(?<TeamsGroupPermissions>.+|)

\*\*File Server - shared folder:\*\* _(?<FileShare>.+|)

\*\*File Server Permissions:\*\* _(?<FileSharePermissions>.+|)

\*\*Group Email Accounts :\*\* _(?<GroupEmail>.+|)

\*\*Outlook Public Folders:\*\* _(?<OutlookPublicFolders>.+|)

\*\*Access to office areas \(door card\):\*\* _(?<OfficeArea>.+|)

 

2 ACCEPTED SOLUTIONS

Accepted Solutions
Warren_Gibbs
Helper I
Helper I

@acox - Thank you very much!!

View solution in original post

acox
Helper I
Helper I

3 REPLIES 3
acox
Helper I
Helper I

Hi @Warren_Gibbs,

 

As far as I can see, your expression is missing two things: a capturing group ( ) for each statement and alternation operators between them (the "|" symbol):

 

\*\*(SharePoint sites:)\*\* _(?<SharePointSites>.+|)|\*\*(SharePoint Site Permissions:)\*\* _(?<SharePointSitePermissions>.+|)|etc...

 

This is what the complete expression should look like:

 

\*\*(SharePoint sites:)\*\* _(?<SharePointSites>.+|)|\*\*(SharePoint Site Permissions:)\*\* _(?<SharePointSitePermissions>.+|)|\*\*(Teams group:)\*\* _(?<TeamsGroup>.+|)|\*\*(Teams group Permissions:)\*\* _(?<TeamsGroupPermissions>.+|)|\*\*(File Server - shared folder:)\*\* _(?<FileShare>.+|)|\*\*(File Server Permissions:)\*\* _(?<FileSharePermissions>.+|)|\*\*(Group Email Accounts :)\*\* _(?<GroupEmail>.+|)|\*\*(Outlook Public Folders:)\*\* _(?<OutlookPublicFolders>.+|)|\*\*(Access to office areas \(door card\):)\*\* _(?<OfficeArea>.+|)

 

 

Hope this was useful!

Warren_Gibbs
Helper I
Helper I

@acox - Thank you very much!!

acox
Helper I
Helper I

You're very welcome, @Warren_Gibbs!

Helpful resources

Announcements
Register for a Free Workshop.png

Register for a Free Workshop

Learn to digitize and optimize business processes and connect all your applications to share data in real time.

September Events 2022

Check out all of these events

Attend in person or online, there are incredible conferences and events happening all throughout the month of September.

Users online (2,143)