my_string = "SELECT * FROM users WHERE first_name = 'first name value'"
my_string2 = "SELECT * FROM users WHERE first_name = 'first\"s name value'"
my_string3 = "SELECT * FROM users WHERE first_name = 'first\\'s name value'"
rx = /first_name = (?:'(?<val>[^'\\]*(?:\\.[^'\\]*)*)'|"(?<val>[^"\\]*(?:\\.[^"\\]*)*"))/i
puts rx.match(my_string)["val"]
puts rx.match(my_string2)["val"]
puts rx.match(my_string3)["val"]
bXlfc3RyaW5nID0gIlNFTEVDVCAqIEZST00gdXNlcnMgV0hFUkUgZmlyc3RfbmFtZSA9ICdmaXJzdCBuYW1lIHZhbHVlJyIKbXlfc3RyaW5nMiA9ICJTRUxFQ1QgKiBGUk9NIHVzZXJzIFdIRVJFIGZpcnN0X25hbWUgPSAnZmlyc3RcInMgbmFtZSB2YWx1ZSciCm15X3N0cmluZzMgPSAiU0VMRUNUICogRlJPTSB1c2VycyBXSEVSRSBmaXJzdF9uYW1lID0gJ2ZpcnN0XFwncyBuYW1lIHZhbHVlJyIKCnJ4ID0gL2ZpcnN0X25hbWUgPSAoPzonKD88dmFsPlteJ1xcXSooPzpcXC5bXidcXF0qKSopJ3wiKD88dmFsPlteIlxcXSooPzpcXC5bXiJcXF0qKSoiKSkvaQogCnB1dHMgcngubWF0Y2gobXlfc3RyaW5nKVsidmFsIl0KcHV0cyByeC5tYXRjaChteV9zdHJpbmcyKVsidmFsIl0KcHV0cyByeC5tYXRjaChteV9zdHJpbmczKVsidmFsIl0K