#include <MsgBoxConstants.au3> ; to declare the Constants of MsgBox
Local $sRegex = "(?m)^(\.?\w+)(?: (\w+))(( \S+)*)"
Local $sString = "# Circuit generated by QLib" & @CRLF & _
"# Cuccaro's Adder" & @CRLF & _
"# arXiv:quant-ph/0410184v1 " & @CRLF & _
"# 15 bit quantum adder" & @CRLF & _
"" & @CRLF & _
".qubit 32" & @CRLF & _
"" & @CRLF & _
"qubit c0" & @CRLF & _
"qubit a0" & @CRLF & _
"qubit b0" & @CRLF & _
"qubit a1" & @CRLF & _
"qubit b1" & @CRLF & _
"qubit a2" & @CRLF & _
"qubit b2" & @CRLF & _
"qubit a3" & @CRLF & _
"qubit b3" & @CRLF & _
"qubit a4" & @CRLF & _
"qubit b4" & @CRLF & _
"qubit a5" & @CRLF & _
"qubit b5" & @CRLF & _
"qubit a6" & @CRLF & _
"qubit b6" & @CRLF & _
"qubit a7" & @CRLF & _
"qubit b7" & @CRLF & _
"qubit a8" & @CRLF & _
"qubit b8" & @CRLF & _
"qubit a9" & @CRLF & _
"qubit b9" & @CRLF & _
"qubit a10" & @CRLF & _
"qubit b10" & @CRLF & _
"qubit a11" & @CRLF & _
"qubit b11" & @CRLF & _
"qubit a12" & @CRLF & _
"qubit b12" & @CRLF & _
"qubit a13" & @CRLF & _
"qubit b13" & @CRLF & _
"qubit a14" & @CRLF & _
"qubit b14" & @CRLF & _
"qubit z" & @CRLF & _
"" & @CRLF & _
".begin" & @CRLF & _
"CNOT a0 b0" & @CRLF & _
"CNOT a0 c0" & @CRLF & _
"Toffoli c0 b0 a0" & @CRLF & _
"CNOT a1 b1" & @CRLF & _
"CNOT a1 a0" & @CRLF & _
"Toffoli a0 b1 a1" & @CRLF & _
"CNOT a2 b2" & @CRLF & _
"CNOT a2 a1" & @CRLF & _
"Toffoli a1 b2 a2" & @CRLF & _
"CNOT a3 b3" & @CRLF & _
"CNOT a3 a2" & @CRLF & _
"Toffoli a2 b3 a3" & @CRLF & _
"CNOT a4 b4" & @CRLF & _
"CNOT a4 a3" & @CRLF & _
"Toffoli a3 b4 a4" & @CRLF & _
"CNOT a5 b5" & @CRLF & _
"CNOT a5 a4" & @CRLF & _
"Toffoli a4 b5 a5" & @CRLF & _
"CNOT a6 b6" & @CRLF & _
"CNOT a6 a5" & @CRLF & _
"Toffoli a5 b6 a6" & @CRLF & _
"CNOT a7 b7" & @CRLF & _
"CNOT a7 a6" & @CRLF & _
"Toffoli a6 b7 a7" & @CRLF & _
"CNOT a8 b8" & @CRLF & _
"CNOT a8 a7" & @CRLF & _
"Toffoli a7 b8 a8" & @CRLF & _
"CNOT a9 b9" & @CRLF & _
"CNOT a9 a8" & @CRLF & _
"Toffoli a8 b9 a9" & @CRLF & _
"CNOT a10 b10" & @CRLF & _
"CNOT a10 a9" & @CRLF & _
"Toffoli a9 b10 a10" & @CRLF & _
"CNOT a11 b11" & @CRLF & _
"CNOT a11 a10" & @CRLF & _
"Toffoli a10 b11 a11" & @CRLF & _
"CNOT a12 b12" & @CRLF & _
"CNOT a12 a11" & @CRLF & _
"Toffoli a11 b12 a12" & @CRLF & _
"CNOT a13 b13" & @CRLF & _
"CNOT a13 a12" & @CRLF & _
"Toffoli a12 b13 a13" & @CRLF & _
"CNOT a14 b14" & @CRLF & _
"CNOT a14 a13" & @CRLF & _
"Toffoli a13 b14 a14" & @CRLF & _
"CNOT a14 z" & @CRLF & _
"Toffoli a13 b14 a14" & @CRLF & _
"CNOT a14 a13" & @CRLF & _
"CNOT a13 b14" & @CRLF & _
"Toffoli a12 b13 a13" & @CRLF & _
"CNOT a13 a12" & @CRLF & _
"CNOT a12 b13" & @CRLF & _
"Toffoli a11 b12 a12" & @CRLF & _
"CNOT a12 a11" & @CRLF & _
"CNOT a11 b12" & @CRLF & _
"Toffoli a10 b11 a11" & @CRLF & _
"CNOT a11 a10" & @CRLF & _
"CNOT a10 b11" & @CRLF & _
"Toffoli a9 b10 a10" & @CRLF & _
"CNOT a10 a9" & @CRLF & _
"CNOT a9 b10" & @CRLF & _
"Toffoli a8 b9 a9" & @CRLF & _
"CNOT a9 a8" & @CRLF & _
"CNOT a8 b9" & @CRLF & _
"Toffoli a7 b8 a8" & @CRLF & _
"CNOT a8 a7" & @CRLF & _
"CNOT a7 b8" & @CRLF & _
"Toffoli a6 b7 a7" & @CRLF & _
"CNOT a7 a6" & @CRLF & _
"CNOT a6 b7" & @CRLF & _
"Toffoli a5 b6 a6" & @CRLF & _
"CNOT a6 a5" & @CRLF & _
"CNOT a5 b6" & @CRLF & _
"Toffoli a4 b5 a5" & @CRLF & _
"CNOT a5 a4" & @CRLF & _
"CNOT a4 b5" & @CRLF & _
"Toffoli a3 b4 a4" & @CRLF & _
"CNOT a4 a3" & @CRLF & _
"CNOT a3 b4" & @CRLF & _
"Toffoli a2 b3 a3" & @CRLF & _
"CNOT a3 a2" & @CRLF & _
"CNOT a2 b3" & @CRLF & _
"Toffoli a1 b2 a2" & @CRLF & _
"CNOT a2 a1" & @CRLF & _
"CNOT a1 b2" & @CRLF & _
"Toffoli a0 b1 a1" & @CRLF & _
"CNOT a1 a0" & @CRLF & _
"CNOT a0 b1" & @CRLF & _
"Toffoli c0 b0 a0" & @CRLF & _
"CNOT a0 c0" & @CRLF & _
"CNOT c0 b0" & @CRLF & _
".end" & @CRLF & _
"" & @CRLF & _
"# Circuit generated by QLib" & @CRLF & _
"# Bernstein-Vazirani search" & @CRLF & _
"# Secret= 1" & @CRLF & _
".qubit 11" & @CRLF & _
"qubit x0 " & @CRLF & _
"qubit x1 " & @CRLF & _
"qubit x2 " & @CRLF & _
"qubit x3 " & @CRLF & _
"qubit x4 " & @CRLF & _
"qubit x5 " & @CRLF & _
"qubit x6 " & @CRLF & _
"qubit x7 " & @CRLF & _
"qubit x8 " & @CRLF & _
"qubit x9 " & @CRLF & _
"qubit y" & @CRLF & _
"Prep0 y" & @CRLF & _
".begin" & @CRLF & _
"X y" & @CRLF & _
"H x0" & @CRLF & _
"H x1" & @CRLF & _
"H x2" & @CRLF & _
"H x3" & @CRLF & _
"H x4" & @CRLF & _
"H x5" & @CRLF & _
"H x6" & @CRLF & _
"H x7" & @CRLF & _
"H x8" & @CRLF & _
"H x9" & @CRLF & _
"H y" & @CRLF & _
"CNOT x0 y" & @CRLF & _
"H x0" & @CRLF & _
"H x1" & @CRLF & _
"H x2" & @CRLF & _
"H x3" & @CRLF & _
"H x4" & @CRLF & _
"H x5" & @CRLF & _
"H x6" & @CRLF & _
"H x7" & @CRLF & _
"H x8" & @CRLF & _
"H x9" & @CRLF & _
"H y" & @CRLF & _
".end" & @CRLF & _
"" & @CRLF & _
"# Circuit generated by QLib" & @CRLF & _
"# QFT for 15 qubits" & @CRLF & _
".qubit 15" & @CRLF & _
"" & @CRLF & _
"qubit q0" & @CRLF & _
"qubit q1" & @CRLF & _
"qubit q2" & @CRLF & _
"qubit q3" & @CRLF & _
"qubit q4" & @CRLF & _
"qubit q5" & @CRLF & _
"qubit q6" & @CRLF & _
"qubit q7" & @CRLF & _
"qubit q8" & @CRLF & _
"qubit q9" & @CRLF & _
"qubit q10" & @CRLF & _
"qubit q11" & @CRLF & _
"qubit q12" & @CRLF & _
"qubit q13" & @CRLF & _
"qubit q14" & @CRLF & _
"" & @CRLF & _
".begin" & @CRLF & _
"H q0" & @CRLF & _
"CP q1 q0 2" & @CRLF & _
"CP q2 q0 1" & @CRLF & _
"CP q3 q0 0.5" & @CRLF & _
"CP q4 q0 0.25" & @CRLF & _
"CP q5 q0 0.125" & @CRLF & _
"CP q6 q0 0.0625" & @CRLF & _
"CP q7 q0 0.03125" & @CRLF & _
"CP q8 q0 0.015625" & @CRLF & _
"CP q9 q0 0.0078125" & @CRLF & _
"CP q10 q0 0.00390625" & @CRLF & _
"CP q11 q0 0.00195312" & @CRLF & _
"CP q12 q0 0.000976562" & @CRLF & _
"CP q13 q0 0.000488281" & @CRLF & _
"CP q14 q0 0.000244141" & @CRLF & _
"H q1" & @CRLF & _
"CP q2 q1" & @CRLF & _
"CP q3 q1 1" & @CRLF & _
"CP q4 q1 0.5" & @CRLF & _
"CP q5 q1 0.25" & @CRLF & _
"CP q6 q1 0.125" & @CRLF & _
"CP q7 q1 0.0625" & @CRLF & _
"CP q8 q1 0.03125" & @CRLF & _
"CP q9 q1 0.015625" & @CRLF & _
"CP q10 q1 0.0078125" & @CRLF & _
"CP q11 q1 0.00390625" & @CRLF & _
"CP q12 q1 0.00195312" & @CRLF & _
"CP q13 q1 0.000976562" & @CRLF & _
"CP q14 q1 0.000488281" & @CRLF & _
"H q2" & @CRLF & _
"CP q3 q2 2" & @CRLF & _
"CP q4 q2 1" & @CRLF & _
"CP q5 q2 0.5" & @CRLF & _
"CP q6 q2 0.25" & @CRLF & _
"CP q7 q2 0.125" & @CRLF & _
"CP q8 q2 0.0625" & @CRLF & _
"CP q9 q2 0.03125" & @CRLF & _
"CP q10 q2 0.015625" & @CRLF & _
"CP q11 q2 0.0078125" & @CRLF & _
"CP q12 q2 0.00390625" & @CRLF & _
"CP q13 q2 0.00195312" & @CRLF & _
"CP q14 q2 0.000976562" & @CRLF & _
"H q3" & @CRLF & _
"CP q4 q3 2" & @CRLF & _
"CP q5 q3 1" & @CRLF & _
"CP q6 q3 0.5" & @CRLF & _
"CP q7 q3 0.25" & @CRLF & _
"CP q8 q3 0.125" & @CRLF & _
"CP q9 q3 0.0625" & @CRLF & _
"CP q10 q3 0.03125" & @CRLF & _
"CP q11 q3 0.015625" & @CRLF & _
"CP q12 q3 0.0078125" & @CRLF & _
"CP q13 q3 0.00390625" & @CRLF & _
"CP q14 q3 0.00195312" & @CRLF & _
"H q4" & @CRLF & _
"CP q5 q4 2" & @CRLF & _
"CP q6 q4 1" & @CRLF & _
"CP q7 q4 0.5" & @CRLF & _
"CP q8 q4 0.25" & @CRLF & _
"CP q9 q4 0.125" & @CRLF & _
"CP q10 q4 0.0625" & @CRLF & _
"CP q11 q4 0.03125" & @CRLF & _
"CP q12 q4 0.015625" & @CRLF & _
"CP q13 q4 0.0078125" & @CRLF & _
"CP q14 q4 0.00390625" & @CRLF & _
"H q5" & @CRLF & _
"CP q6 q5 2" & @CRLF & _
"CP q7 q5 1" & @CRLF & _
"CP q8 q5 0.5" & @CRLF & _
"CP q9 q5 0.25" & @CRLF & _
"CP q10 q5 0.125" & @CRLF & _
"CP q11 q5 0.0625" & @CRLF & _
"CP q12 q5 0.03125" & @CRLF & _
"CP q13 q5 0.015625" & @CRLF & _
"CP q14 q5 0.0078125" & @CRLF & _
"H q6" & @CRLF & _
"CP q7 q6 2" & @CRLF & _
"CP q8 q6 1" & @CRLF & _
"CP q9 q6 0.5" & @CRLF & _
"CP q10 q6 0.25" & @CRLF & _
"CP q11 q6 0.125" & @CRLF & _
"CP q12 q6 0.0625" & @CRLF & _
"CP q13 q6 0.03125" & @CRLF & _
"CP q14 q6 0.015625" & @CRLF & _
"H q7" & @CRLF & _
"CP q8 q7 2" & @CRLF & _
"CP q9 q7 1" & @CRLF & _
"CP q10 q7 0.5" & @CRLF & _
"CP q11 q7 0.25" & @CRLF & _
"CP q12 q7 0.125" & @CRLF & _
"CP q13 q7 0.0625" & @CRLF & _
"CP q14 q7 0.03125" & @CRLF & _
"H q8" & @CRLF & _
"CP q9 q8 2" & @CRLF & _
"CP q10 q8 1" & @CRLF & _
"CP q11 q8 0.5" & @CRLF & _
"CP q12 q8 0.25" & @CRLF & _
"CP q13 q8 0.125" & @CRLF & _
"CP q14 q8 0.0625" & @CRLF & _
"H q9" & @CRLF & _
"CP q10 q9 2" & @CRLF & _
"CP q11 q9 1" & @CRLF & _
"CP q12 q9 0.5" & @CRLF & _
"CP q13 q9 0.25" & @CRLF & _
"CP q14 q9 0.125" & @CRLF & _
"H q10" & @CRLF & _
"CP q11 q10 2" & @CRLF & _
"CP q12 q10 1" & @CRLF & _
"CP q13 q10 0.5" & @CRLF & _
"CP q14 q10 0.25" & @CRLF & _
"H q11" & @CRLF & _
"CP q12 q11 2" & @CRLF & _
"CP q13 q11 1" & @CRLF & _
"CP q14 q11 0.5" & @CRLF & _
"H q12" & @CRLF & _
"CP q13 q12 2" & @CRLF & _
"CP q14 q12 1" & @CRLF & _
"H q13" & @CRLF & _
"CP q14 q13 2" & @CRLF & _
"H q14" & @CRLF & _
".end" & @CRLF & _
"" & @CRLF & _
"" & @CRLF & _
""
Local $sSubst = ""
Local $sResult = StringRegExpReplace($sString, $sRegex, $sSubst)
MsgBox($MB_SYSTEMMODAL, "Result", $sResult)
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for AutoIt, please visit: https://www.autoitscript.com/autoit3/docs/functions/StringRegExp.htm