我有两个字符串:
(123)4567890
1234567890
Run Code Online (Sandbox Code Playgroud)
这对(和)必须同时出现,或两者都省略.目前我使用这个正则表达式:
(?:(?:\(\d{3}\))|(?:\d{3}))\d{7}
Run Code Online (Sandbox Code Playgroud)
其中使用OR到匹配两个案例之一:
\(\d{3}\)
\d{3}
Run Code Online (Sandbox Code Playgroud)
只是好奇,我如何检查(当前比赛的最后一场比赛(有或没有)(检查))?你能建议我另一种方法来达到同样的效果吗?
在C#中,此SendMessage函数成功提高了音量:
[DllImport("user32.dll")]
public static extern IntPtr SendMessage(IntPtr hWnd, int Msg, int wParam, int lParam);
SendMessage(Handle, 0x319, (int)Handle, APPCOMMAND_VOLUME_UP);
Run Code Online (Sandbox Code Playgroud)
但是在C++中,这个SendMessage函数不起作用,即卷不会上升:
// HWND hwnd = CreateWindow(...
SetWindowText(hwnd, "Hi"); // Worked
SendMessage(hwnd, WM_APPCOMMAND, (int)hwnd, APPCOMMAND_VOLUME_UP); // Don't work
Run Code Online (Sandbox Code Playgroud)
我错了什么?你能帮我解决一下吗?谢谢!
完整代码:
#include <windows.h>
HHOOK _hhook;
HWND hwnd;
HINSTANCE _hInstance;
KBDLLHOOKSTRUCT kbdStruct;
LRESULT __stdcall HookCallback(int nCode, WPARAM wParam, LPARAM lParam)
{
if (nCode >= 0)
{
if (wParam == WM_KEYDOWN)
{
// lParam is the pointer to the struct containing the data needed, so cast …Run Code Online (Sandbox Code Playgroud) arrays ×1
c# ×1
c++ ×1
element ×1
handle ×1
hwnd ×1
javascript ×1
parentheses ×1
regex ×1
sendmessage ×1
winapi ×1