Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 163
  • Last Modified:

RegEx Question

I am trying to write a program the recognizes VB lines such as Public Sub.....() Private Function....() etc..

I do NOT want Private|Public Declare statements. Only subs and functions.

The regular expression I am using is:

.Pattern = "[Private|Public Function|Sub].*\)"

That is, of course, picking up the Declare statements. How do I write one that says "Private or Public AND one space AND Function or sub, followed by any number of anything, and ending in a closed parenthesis"?
0
DrDamnit
Asked:
DrDamnit
1 Solution
 
Ravi SinghSenior Software EngineerCommented:
Hi, the following regex should do what your after:

^(Private|Public)\s{1}(Function|Sub).+\)$

Explanation: string must start with either Private or Public followed by one empty space then either Function or Sub and finally one or more of any character then finally finishing with a closing bracket.. I don't know if you want to cater for this situation but a function signature ends with the return type ... e.g.

Public Function ProcessSomething(ByVal Data As String) As Boolean

Your current regex says that the last character should be a closing bracket... if you want to match a full function signature then you could use the following regex:

^(Private|Public)\s{1}(Function|Sub).+(As\s.+|\))$
0

Featured Post

Upgrade your Question Security!

Your question, your audience. Choose who sees your identity—and your question—with question security.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now