| | |
| | | m_invalidInputCallback = callback; |
| | | } |
| | | |
| | | bool CRegexEdit::FindMatch(const std::string& pattern, std::string& foundText) |
| | | { |
| | | CString currentText; |
| | | GetWindowText(currentText); |
| | | |
| | | std::string text(CT2A(currentText.GetString())); |
| | | std::regex regexPattern(pattern); |
| | | std::smatch match; |
| | | |
| | | if (std::regex_search(text, match, regexPattern)) { |
| | | foundText = match.str(); |
| | | return true; |
| | | } |
| | | return false; |
| | | } |
| | | |
| | | void CRegexEdit::ReplaceMatch(const std::string& pattern, const std::string& replacement) |
| | | { |
| | | CString currentText; |
| | | GetWindowText(currentText); |
| | | |
| | | std::string text(CT2A(currentText.GetString())); |
| | | std::regex regexPattern(pattern); |
| | | std::string result = std::regex_replace(text, regexPattern, replacement); |
| | | |
| | | SetWindowText(CString(result.c_str())); |
| | | } |
| | | |
| | | std::regex CRegexEdit::GetCurrentRegex() const |
| | | { |
| | | switch (m_enRegexType) |